1. 47

Following up on the post from last year, I’d love to know what you Lobsters are planning to pick up in 2020!

  1.  

  2. 11

    Rust, I think.

    I’d also like to get my Spanish up to snuff.

    (¿Donde estan las langostas que hablan Espanol?)

    1. 3

      Lo hablo (más o menos), pero casi nunca. Tengo familia en España y (del lado de mí madrastra) Argentina. Sería buena practicarlo más.

      1. 2

        Aquí hay una langosta, cuando gusten practicar :)

      2. 3

        Are you planning to pick up Rust for something specific or just for fun?

        1. 1

          Fun mostly, though if I end up liking it I have a good candidate for a large-ish project that I think would be a good fit

        2. 2

          Aquí estámos! Saludos! 👋🏽

        3. 15

          I will learn:

          • More number theory and error analysis so that I can implement the Elusive Eight.
          • More about BATMAN and mesh networking, so that I can keep improving my home network.
          • More about implementation of databases so that I can implement a proper categorical database system.
          • More about Z3’s internals. I think that I have an improvement on the state of the art for 3-SAT but I’m not sure yet because I haven’t grokked every internal representation of Z3.
          • To get better at proposing simple natural arguments which infuriate bigots, so that I can more effectively create self-doubt and insecurity amongst fascists.
          • One additional algorithm for a non-standard Rubik’s Cube. Probably parity fixes for 4x4/5x5 or last-layer for Megaminx.
          • To keep Venus flytraps alive. Surprisingly picky plants, and I don’t have a green thumb.
          1. 4
            • More about implementation of databases so that I can implement a proper categorical database system.

            Can you tell me more about “categorical database system”? I stumbled upon http://math.mit.edu/~dspivak/informatics/talks/CTDBIntroductoryTalk it looks interesting. Thanks!

            1. 5

              Imagine a database that is not built on relational logic, but on categorical logic. Imagine not just graph databases, but databases which store hypergraphs with path equivalence; that is, databases in which categories are the objects being searched and stored.

              Alternatively, imagine a language for expressing categorical ideas. I keep coming back to Hagino CPL, a language in which one writes lengthy categorical expressions, and retrieves a canonicalized shortened categorical expression.

            2. 2

              More about BATMAN and mesh networking, so that I can keep improving my home network.

              Are you using mesh network at home? Which devices are you using for it? Is there a real advantage using a mesh network at home instead that using a traditional network?

              1. 2

                More about Z3’s internals.

                Z3?

                1. 7

                  The Z3 Theorem Prover, an efficient SMT (Satisfiability Modulo Theories) solver very popular and widely used in Formal Methods and PLT (Programming Language Theory) research communities.

                  Programming Z3 is a nice tutorial with references to other great resources about Z3.

                  1. 11

                    A roadster built by BMW in the 90’s and early 2000’s. I also have a somewhat broken one that I need to learn more about it’s internals to get it roadworthy again.

                    1. 1

                      A SMT/SAT solver by Microsoft

                    2. 1

                      3-SAT is, as far as I can tell, mostly a theoretical device. SAT solver implementations deal with arbitrary clauses (but have special optimizations for 2- and sometimes 3- clauses). I’d recommend looking at minisat/glucose/cadical rather than Z3 if you’re into pure SAT because Z3 is a SMT solver and is literally orders of magnitudes more complex than a SAT solver.

                      1. 1

                        To keep Venus flytraps alive. Surprisingly picky plants, and I don’t have a green thumb.

                        I was endlessly fascinated by these as a young man and killed a great succession of them, probably due to over-feeding.

                        1. 1

                          To get better at proposing simple natural arguments which infuriate bigots, so that I can more effectively create self-doubt and insecurity amongst fascists.

                          This is something I’ve been thinking about for a while as well. Do you think they are open to the voice of reason/argument?

                        2. 8

                          There will be more C++ work in my 2020 than I’m used to, so that will be a learning experience. My main focus will be on IPC hardening in Firefox.

                          I’d like to do a bit more public speaking, mentoring / facilitating and Rust in 2020.

                          1. 8

                            I will actually make it to the very end of SICP, register machines and all.

                            Then try a non-trivial thing in Racket.

                            1. 3

                              Awesome! Racket is the first language I will learn some years from now when I attain Journeyman level in Python.

                              I’m very fascinated by both the language itself and the rich deep ecosystem that exists around it. Really impressive stuff!

                              1. 1

                                Why delay? It’s sufficiently different that I don’t think learning racket will interfere with improving python.

                                1. 2

                                  Because I have found that when I’m trying to learn something as complex as a programming language, simultaneously cramming other syntaxes and paradigms into my head lessens my ability to master the one I’m currently working on and with. I just wrote a blog post about this, posted under separate cover :)

                                  As I’ve said elsewhere, this isn’t forever, but I do need to rein myself in long enough to get out of the hole I’ve dug for myself.

                              2. 3

                                Try nanopass framework and compite to wasm!

                                1. 3

                                  Since the David Beazley talk posted here a few weeks ago where he wrote a wasm interpreter in python during the talk, I have been keen to play with it. I shall give this a go - thank you for the recommendation!

                                  1. 4

                                    Since the David Beazley talk posted

                                    I missed that. Can you post a link please?

                              3. 7

                                Nix

                                1. 7

                                  I’m gonna do more with Lua and Rust. I need to actually learn Rust for hacking on WebAssembly stuff. Lua because I can do that completely offline with iSH.

                                  Oh and French.

                                    1. 1

                                      What are you doing with Lua? I’ve been using it a lot this past year. I just started learning Rust and like it a lot so far.

                                      1. 1

                                        So far, IRC bots and playing with web frameworks to try to find one. I might end up writing my own lol.

                                        1. 1

                                          Very cool. I have poked around with Lapis and OpenResty. I like both, just never had a bigger project to build with them.

                                          1. 1

                                            I’ve used Lapis in the past for the old version of christine.website. It used to be my go-to tool for rapid web app development. I should really take a closer look at it again.

                                    2. 6
                                      • keep on refreshing and improving my Spanish
                                      • I’m hoping to learn basics of gardening and then start caning and fermenting some food
                                      • going deeper into resilience engineering
                                      • I’d love to figure out how to assemble an old RPI3 I have with an e-ink display since I’ve very rarely played with hardware
                                      • I don’t really like k8s and dislike Go even more, but I’ll have to get more used to it because it’s absolutely eating the world around ops.
                                      1. 4

                                        @ferd

                                        I don’t really like k8s and dislike Go even more,

                                        You do not have to like them. There is life outside k8s and it is not the best thing ever since sliced bread. However, you can be proficient in them without passion, or even better because you do not like them. That way you can get the job done on the platform without being carried away re-implementing every tooling idea that is out there because it is the cool thing to do.

                                        As the joke says: What do you build with Kubernetes? Your CV. So do it.

                                        1. 4

                                          I never needed either, they just wedged themselves into everything to the point where it’s become a hindrance not to know them. Plus every workplace has a slight variation in which components they use and how they manage them so it’s never the same thing aside from saying “we migrated to k8s” and finding out only the stateless stuff is in there and in the end they’re also still maintaining the previous stack as well that was used for the tricky stuff like databases.

                                      2. 6

                                        I want to learn less breadth and learn more depth this year. The world is changing faster than ever before and the number of existing and new technologies is too damn high.

                                        I don’t work at Google or Netflix, so I wonder how much tech I can avoid. Pretty sure I can avoid Kubernetes, for example.

                                        Here’s where I want to deepen my knowledge this year.

                                        • Make
                                        • Git
                                        • Core Linux utils
                                        • React
                                        • Vim
                                        • TCP
                                        • Postgres
                                        • Go
                                        1. 5

                                          Been feeling like Kubernetes is getting very over-hyped. If you need to deploy and manage containers at scale it’s a really good solution but DO YOU actually need to deploy and maintain containers at scale?

                                          And do you even need to manage them yourself or could you use one of the hosted container management solutions from one of the big cloud vendors. I know at least Azure, Digital Ocean and my employers at AWS have some good choices here.

                                        2. 5

                                          Hardware/embedded systems (tbd what that means exactly)… I have been consistently reminded that probably the thing I could learn about that would help me the most in my work is databases and sql (probably postgresql) properly as opposed to just the random bits of it I pick up.

                                          1. 5

                                            I still want to continue learning Rust. I’d really like it to be my best language by the end of 2020

                                            1. 5

                                              I’m hoping to continue my track going down the stack toward hardware and electronics (Ben Eater’s videos posted on youtube are quite the inspiration). Piano is on my list too, hoping to regain some lost skills and continue on.

                                              1. 4
                                                • I plan to teach myself more about implementation design, both at work as I take on more technical leadership responsibilities and at home, fleshing out the design for and ultimately actually implementing my hobby open source project which is currently in a not very well thought out embryonic state.

                                                • I’ve been getting rather jazzed about the state of the Linux desktop. I’d really love to contribute to Gnome, either by writing an app or (more likely) fixing bugs in others. To that end, in line with my pledge to myself not to learn any new programming languages until I master Python, I want to learn PyGobject/PyGtk. There are a surprising (to me) number of Gnome apps written using it and I’m guessing some of them need help :)

                                                • I have the unlikely dream of learning enough low level details to fixi the bug in Firefox that makes it play through my internal speakers even when a Bluetooth headset is connected and properly paired. I’ve done some work already to isolate it to Firefox. Chromium and all other apps work great. Some diving in their bug tracker indicates this is a result of their dependence on the audio library they use.

                                                1. 1

                                                  I plan to teach myself more about implementation design

                                                  Any thoughts about how you’re going to go about this?

                                                  1. 1

                                                    At work it’s easy peasy. My team has a really strong design review culture. I’ll get hot and cold running feedback on every aspect of my design.

                                                    For hobby projects it’s much harder. It can be very difficult to even get people to understand what it is you’re trying to build (But then communications / marketing is an important part of any good design, right?)

                                                    I wonder if there are groups out there that do this for each other in the open source world. If there aren’t, there should be!

                                                2. 4

                                                  I bought myself an Arduino clone and a starter electronics kit, so I’m planning on getting into that with the goal of building my daughter fun little toys for when she’s old enough to enjoy them.

                                                  On top of that I want to educate myself more on the hardware side of computer systems.

                                                  I also want to write an emulator for a 16-bit console.

                                                  1. 4

                                                    For me, I’ll be learning more Nim. I might even try to write a macro or two in it.

                                                    I’m also reading through Working Effectively with Legacy Code, and 99 Bottles of OOP, so I’ll be learning more about TDD by proxy there.

                                                    Working on Tabula Scripta will also probably involve learning getting more comfortable with graphs and will definitely involve getting more familiar with the JS canvas, or learning how to use HTML tables to implement an lazy-rendering data grid.

                                                    1. 2

                                                      I’ll be learning more Nim

                                                      How has your experience with Nim been so far?

                                                      1. 4

                                                        So far, I’ve liked it quite a bit. It’s definitely got a rough edge or two, but it’s quite pleasant to use.

                                                    2. 4

                                                      For fun:

                                                      • Going deeper into Nim. I wish to release a package on Nimble in the upcoming quarter.

                                                      For work:

                                                      • How to use type hints and dependency injection on large Python/Django projects
                                                      • Dotnet core and probably starting to mess around with Xamarin to build Android applications
                                                      1. 4
                                                        • contribute to Linux kernel
                                                        • finally read category theory for programmers
                                                        • more proficient in Vim
                                                        • one footed forward (and then backward) snakes for ice skating
                                                        1. 1

                                                          for category theory i read https://mostly-adequate.gitbooks.io/mostly-adequate-guide exercises in js

                                                          1. 1

                                                            finally read category theory for programmers

                                                            Category Theory for Programmers sounds super nerdy and fun. I think I might also make it a goal for myself for next year. Here’s a link for others who are interested.

                                                          2. 4

                                                            perl five of course

                                                            1. 3

                                                              The bits of my coding/technical content calendar/learning planner that I hope to wrap up in 2020.

                                                              Focused projects (this is for self-teaching computer science, loosely based on a curriculum):

                                                              1. 3

                                                                JavaScript :-/

                                                                1. 3

                                                                  In 2020

                                                                  • As someone who almost only used scripting/functional* languages like PHP, JS/TS/Node.js, Python…, I want to write an application with a full OOP, probably with Java/Spring
                                                                  • I also want to test out WASM, Kubernetes and React
                                                                  • I want to improve/use more of TypeScript

                                                                  *: Not %100 sure if the terminology is correct

                                                                  1. 3

                                                                    Learn to finally have a PCE.

                                                                    1. 3

                                                                      Ah! This sounds like something I’ve had in the past. These kinds of things are an interesting experience. If you have any questions feel free to ask me here or in a DM.

                                                                      1. 3

                                                                        Nice. Would you say your experience is in alignment with these points?

                                                                        • No sense of self
                                                                        • Heightened sensuosity
                                                                        • Everything is perfect
                                                                        • No feelings/ emotions whatsoever (not a trace of fear, desire, aggression, love, etc.)

                                                                        EDIT: Here are descriptions of some people’s PCE, if you’d like to compare notes: http://actualfreedom.com.au/actualism/others/corr-pce.htm

                                                                        1. 4

                                                                          Yes to all but aspects of the last one. I was left with this near indescribable feeling of awe and love (in the agape sense) for this universe I’m a part of. It felt like “I” wasn’t there, but the whole universe was there observing itself. It’s a lovely feeling. I reach that point in even trivial breath meditation without even trying now.

                                                                          1. 2

                                                                            It sounds like you may have started off having PCEs, before they quickly devolved into ASCs. The give away was your experiencing a feeling of awe and love (which do not occur in a PCE).

                                                                            PCEs are reported to be a superior state. You say you can reach your state without even trying now, and that’s quite remarkable. Perhaps the following passage (emphasis mine) may jog your (pre-ASC?) memory, and even kindle your interest to explore further:

                                                                            Sometimes a PCE is also known as ‘a nature experience’ … wherein one’s own personal experiencing is likewise the only proof worthy of the name. Being deep in a rain-forest goes some way towards making it all clearer … or any wilderness, for that matter. As one travels deeper and deeper into this – initially ‘other’ – world of natural delight, one experiences an intensely hushed stillness that is vast and immense … yet so simply here. I am not referring to a feeling of awe or reverence or great beauty – to have any emotion or passion at all is to miss the actuality of this moment – nor am I referring to any blissful or euphoric state of ‘being’. It is a sensate experience, not an affective state. I am talking about the factual and simple actualness of earthy existence being experienced whilst ambling along or sitting quietly without any particular thought in mind … yet not being mindless either. And then, when a sparkling intimacy occurs, do not the woods take on a fairy-tale-like quality? Is one not in a paradisiacal environment that envelops yet leaves one free? This is the ambience that I speak of. At this magical moment there is no ‘I’ in the head or ‘me’ in the heart … there is this apperceptive awareness wherein thought can operate freely without the encumbrance of any feelings whatsoever. http://actualfreedom.com.au/richard/selectedcorrespondence/sc-pce3.htm

                                                                            1. 2

                                                                              Ah, it almost sounds like that’s describing something I’ve been striving for called the Sovereign Integral state of consciousness. It’s been a journey. Almost like navigating an invisible maze of glass that sends you to the beginning when you touch the walls.

                                                                              1. 1

                                                                                Are instinctual passions and emotions (and the feeling being formed thereof) eliminated in Sovereign Integral state of consciousness? If not, that would be one key difference to PCE and actual freedom.

                                                                      2. 3

                                                                        This sounds fascinating. Thanks for the pointer.

                                                                        I read a few books this year on similar topics (meditation, consciousness, spirituality), and have been trying to integrate meditation in particular into my daily life. So far I’ve had a couple of interesting experiences, but it’s not a routine yet so we’ll see how things proceed.

                                                                        When you say you want to learn to have a PCE, what’s your approach here?

                                                                        1. 2

                                                                          PCEs are 180-degrees opposite to meditation/spiritual experiences.

                                                                          There are two approaches, both can be done at the same time:

                                                                          Here’s a passage I’m presently contemplating on, as an attempt to get closer to PCEs:

                                                                          Apperceptive awareness can be evoked by paying exclusive attention to being alive now. This moment is one’s only moment of being alive … one is never alive at any other time than now. And, wherever one is, one is always here … even if one starts walking over to there, along the way to there one is always here … and when one arrives ‘there’, it too is here. Thus attention becomes a fascination with the fact that one is always here … and it is already now. Fascination leads to reflective contemplation. As one is already here, and it is always now … then one has arrived before one starts. The potent combination of attention, fascination, reflection and contemplation produces apperception, which occurs when aware happens of itself. Apperception is an awareness of consciousness. It is not ‘I’ being aware of ‘me’ being conscious; it is the mind’s awareness of itself. Apperception – a way of seeing that is arrived at by reflective and fascinating contemplative thought – is when ‘I’ cease thinking and thinking takes place of its own accord. Such a mind, being free of the ‘thinker’ and the ‘feeler’ – ‘I’ as ego and soul – is capable of immense clarity and purity.

                                                                          1. 1

                                                                            Interesting.

                                                                            So in the 180 degrees link, almost all the “spiritual freedom” statements have a religious bias, so I’m not sure if the meditation/spirituality they’re referring to is the one I talked about in my previous comment. At the same time, I can’t avoid the feeling that the fact that they write “spiritual freedom” sounds like they’re generalizing spirituality quite a bit, which is not fair/accurate.

                                                                            Unfortunately I would have to disagree with the contents of that link, at least with my approach to meditation/spirituality. Especially because there are multiple forms of meditation. The fact that you’re contemplating on a particular passage is also a kind of meditation, isn’t it?

                                                                            Regardless, it’s an interesting topic to discuss and/or ponder upon.

                                                                            One question that comes to my mind is this: do you think that “contemplation : PCE :: meditation : spirituality” makes sense?

                                                                            1. 1

                                                                              I suggest reading more into the actualists.org site. One thing to remember is that PCE and actual freedom is very different from spiritual experiences you get from meditation and the like.

                                                                              For example, in PCE or in actual freedom there are no emotions/ feelings whatsoever. Which means, no frustration, anger, desire, love, lust, compassion, pity, gratitude, so and so forth.

                                                                      3. 3

                                                                        Sounds a bit buzzwordy, but from a tech perspective I’m currently at a cross-roads where I need to get proficient at applied ML, as well as kubernetes (moving on from beloved docker swarm). Both are perfectly justified, pinky promise.

                                                                        I’m also learning practical marketing on the spot for a side project I’m working on, and expect more ad-hoc learning to happen throughout 2020. Looking forward to the next year and decade!

                                                                        1. 1

                                                                          Regarding ML and k8s, I wrote almost the same stuff!

                                                                          1. 1

                                                                            Just saw your other answer re k8s. I’m mainly agree with the points you’re making, with a little extra twist specific to my situation: Coming from Docker swarm (I have a few servers I’m managing), I was surprised to see the gap to fill isn’t that large to get some k8s proficiency. That and Docker Enterprise being sold to private equity really makes the case to move away from swarm. Nomad, Mesos and friends have either too little marketshare (and thus resources), or are too large and require much more than a team of 1. Let’s see how does that turn out.

                                                                            So to me it’s really about trying to get something practical out of k8s (and same applies for ML)

                                                                          2. 1

                                                                            I’m also learning practical marketing on the spot for a side project I’m working on

                                                                            That sounds fun! I’m also getting more and more into marketing for my own side project so it’s interesting to talk to other developers in the same boat.

                                                                            Are you learning mostly by doing or following some resource? Also, what’s the side project if I may ask?

                                                                            1. 1

                                                                              Mostly by doing things that do not scale (a cliché but it’s true).

                                                                              My experience in past projects and similar efforts is that resources are either only useful after your project is in cruising speed, or if it’s a common knowledge business (say dropshipping to pick an easy example).

                                                                              Each project requires its own impulse to kick start it and from what I see it’s an art more than a science.

                                                                              What I’m trying right now concretely is to discover segments for which my side project is delivering value, and engaging with people from that segment to validate and understand their needs. Will see what comes after, once I figure this stage out!

                                                                              The project in question is Monitoro (all feedback is welcome!)

                                                                              Interested to know about yours as well! Is it a business, or an open-source project, or both? :D

                                                                              1. 1

                                                                                Monitoro looks very useful. Your approach to discover segments and engage with them sounds reasonable. Are you planning something else for discovery as well?

                                                                                I’m working on Developer to Manager. It’s a side-project/business that I started working on last year. It did generate some revenue this year, but I’m trying to figure out if I can somehow make that revenue consistent instead of every now and then. At the same time, I’m getting myself into the SEO rabbit-hole, which is also an interesting world to discover. Feedback welcome! :)

                                                                                1. 1

                                                                                  Monitoro looks very useful.

                                                                                  How do you see yourself using it? (just exploring how other people perceive it)

                                                                                  I’m working on Developer to Manager.

                                                                                  That’s a great niche, and looks like you’re executing great on it, kudos! SEO is indeed a world on its own, and it’s next on my checklist (I’m thinking of following some ideas from Zapier’s book).

                                                                                  Out of curiosity, if you’re fine sharing, what’s the order of magnitude of subscribers that you currently have, and what percentage are generating revenue?

                                                                          3. 3
                                                                            1. How to improve my mental health. I have paralyzing anxiety (panic attacks, etc) of anything outside of work, which probably contributes to my workaholism. As much as people talk about being more supportive of mental health, no one really cares and it’s still very stigmatizing and leads to ostracizing by super outgoing family members (and in-laws) who complain about “why can’t you just be normal”. Supporting mental health isn’t a hashtag you can fix in 24 hours, it’s a real, long term thing for people dealing with suicidal ideations, panic attacks, about to have a mental breakdown, or burnout.

                                                                            2. Learning unknown things by reading open source. I’ve been going through GCC, LLVM, Torque3D engine, and Quake 3 over the past few weeks and learning a bunch of things I didn’t even think about to learn. I’ve never really worked explicitly in C, only in C++, so this has been helping learn some techniques for doing that as well.

                                                                            1. 2

                                                                              Ansible.

                                                                              Constraint-based programming and anything to do with “animation programming”.

                                                                              Become really, really good at planning.

                                                                              I feel these 3 things will bring the most value to me. Especially Ansible.

                                                                              Improving my knowledge of Rust and TypeScript is a given, although I already feel like just looking at the documentation covers my needs when required. Concepts are more useful than absolutes I’ve come to learn.

                                                                              1. 2

                                                                                I feel these 3 things will bring the most value to me. Especially Ansible

                                                                                May I suggest Ansible for DevOps then?

                                                                                1. 1

                                                                                  Oh no need. That’s the first one I’ve been reading through :) In fact I think I read through more than half in one night it was so good.

                                                                                  1. 1

                                                                                    I see there is also a Kubernetes version now.

                                                                                    1. 1

                                                                                      Honestly I don’t see much point behind Kubernetes if you package your software correctly.

                                                                                      I see Docker + Kubernetes as “lazy deployment” vs Proper package + Ansible as “proper deployment”. Of course these could be translated to “fast, minimal deployment” to “slow, flexible deployment” respectively, and probably others.

                                                                                      I think there’ll be a shift away from Kubernetes as time goes on. I mean look at all the container orchestration tools, whereas Ansible has basically won the configuration management, application deployment, and whatever-else-it-does wars. Containers have their benefits but they are pretty inflexible and not easily manageable depending who you ask.

                                                                                2. 1

                                                                                  anything to do with “animation programming”.

                                                                                  Is that this ?

                                                                                  If not, can you explain what you mean?

                                                                                  1. 2

                                                                                    I guess graphics programming is more accurate. I want to understand how tweening and whatnot work at a technical level. Reason: people like shiny things. So being able to make shiny things will be useful.

                                                                                    1. 1

                                                                                      I think animation programming is just fine :) I was just curious since there are variations on that phrase that have radically different meanings.

                                                                                      Sounds like fun! Out of curiosity what platform are you looking into learning this stuff for? Guessing web/Javascript.

                                                                                      1. 2

                                                                                        Yeah exactly. With the coming of Flutter, I see a big case behind it is very fine-tuned graphics/animations. Being able to do this in JS-land with confidence will be important to UI/UX devs in the coming years.

                                                                                3. 2
                                                                                  • Prolog
                                                                                  • ML, GANs
                                                                                  • Racket
                                                                                  1. 2
                                                                                    • Maybe finally release a PL I’ve been playing with
                                                                                    • Rust
                                                                                    • Commander X16, if that ever ships a physical machine.
                                                                                    • Oh, also, I think I should write this book I’ve wanted to…so learning to do that.

                                                                                    Probably some other things.

                                                                                    1. 1

                                                                                      Please do release! :) Also, it is self-empowering, to later look at it back and say to oneself: “I released something!” Regardless if people liked it, but knowing that it was the grueling, scary, soul-drenching “last 80%” of work that nearly nobody will understand or appreciate - except the rare few others in the hidden quiet club of people who also managed to persevere through the ritual of The Release.

                                                                                    2. 2

                                                                                      Tech-wise I’m at an odd place where I’m already pretty good at all the things that I do regularly and there isn’t an obvious next thing to learn. It’s hard to muster the energy to learn anything without any clear plans to apply it. There’s lots of things I could learn - GPGPU programming (more in-depth, I already know the basics), machine learning, formal methods, graphics, cryptography all seem interesting - but nothing stands out above the rest. So, nothing currently planned.

                                                                                      Outside of tech I hope to continue developing my cooking skills in general, and specifically I want to learn to make chocolates. I also want to play around with Scott Young’s ideas on Ultralearning so I’ll probably do both at once by practicing chocolatiering Ultralearning-style.

                                                                                      1. 2

                                                                                        Some things I plan to explore in 2020 are:

                                                                                        • Using Raku as a general purpose scripting language.
                                                                                        • Haskell
                                                                                        • Formal Methods by working through Software Foundations.
                                                                                        • I’m 1/3 of the way through Designing Data Intensive Applications. I plan to finish it and then in the second pass, read some of the papers it links to.
                                                                                        • PostgreSQL Internals
                                                                                        1. 2

                                                                                          After blogging quite a bit in 2019, I’m planning to learn how to write a tech book on growing, as a software engineer.

                                                                                          In general, I find a great way to set a goal on teaching something - that you don’t know. In my case, I’m sure I’ll learn a lot more about software engineering and career growth next year, through the book project, than I’ve done before.

                                                                                          1. 2
                                                                                            • Clojure
                                                                                            • Time series prediction with neural networks
                                                                                            • Flutter and Dart
                                                                                            • More C++17 and C++20
                                                                                            • Try out the Fish shell properly
                                                                                            • Kubernetes
                                                                                            1. 2

                                                                                              WORK:

                                                                                              • Go deep in AWS
                                                                                              • Being proficient with Golang
                                                                                              • Prepare for OSCP certification

                                                                                              HOME:

                                                                                              • Improve my Mandarin skills
                                                                                              • Finish my home automation projects
                                                                                              • Learn a bit of frontend development
                                                                                              1. 2

                                                                                                So much to do, so little time… but one thing I definitely plan to be learning the coming year is wing-foiling! 🦇

                                                                                                1. 2

                                                                                                  Learning more kotlin & rust. And finally finishing that course about

                                                                                                  algebraic structures, RSA methods for data encryption finite-dimensional vector spaces, linear maps and matrices, Gaussian algorithm, determinants, eigenvalues, real and complex numbers, Consequences and convergence.

                                                                                                  I can spend days getting some futures 0.1 stuff in rust to work (or spend days in work), but I’m so bad at really investing time into that course. The moment I’ve understood how/why it works I’m already back thinking about rust.. Apparently people can’t understand how you can be bad at “Math” but good at this. Still I should at least finish that degree.

                                                                                                  1. 2

                                                                                                    Lora, Tig welding, Scuba diving, more Rust and more hobby robotics.

                                                                                                    1. 2

                                                                                                      I am so slow at writing design docs at work. I get paralyzed by indecision. I want to become faster!

                                                                                                      1. 2

                                                                                                        Deadlines make you faster. Put an artificial deadline to yourself, couple it with a money donation via stickk and you may be there.

                                                                                                        1. 2

                                                                                                          but what if I’m stuckk

                                                                                                          (sorry)

                                                                                                          1. 1

                                                                                                            :) Usually talking to people unsticks me.

                                                                                                            1. 1

                                                                                                              What @adamo said. Talk to people. Talk to a rubber duck if there are no people around (not as good but can work in a pinch). I’ve unblocked myself countless times by talking to my wife. She’s totally non technical but is a keen listener and even keener question asker :)

                                                                                                              Also, break the thing you’re stuck on down into finer and finer chunks. What DO you know? File the unknowns down until they’re the tiniest possible size they can be. Sometimes this can really help clarify your situation.

                                                                                                        2. 2
                                                                                                          • I’m currently studying Rust but it might be just a holiday thing, not sure.

                                                                                                          • I’m planning to learn a lot about supply-chain optimization for a personal project I want to start and that’s the only real thing I’ve in plan.

                                                                                                          • Then, in my job I will probably have to deal with more instrumentation and monitoring/logging of services so I would like to learn more about modern practices in that field because I never got really involved in those things before.

                                                                                                          • Language-wise I hope to keep going with my Cantonese basics, resume my Mandarin (stopped at HSK 1 5 years ago, so it’s basically 0) and achieve a solid B2 or possibly C1 in German by the end of the year.

                                                                                                          1. 2

                                                                                                            I plan to learn Smalltalk (https://pharo.org). And how the real OOP is meant to be done: https://books.pharo.org/learning-oop/

                                                                                                            Then I plan to reuse this to finish a smalltalk port of my interactive fiction app: https://locadeserta.com/index_en.html powered by my custom engine: https://github.com/gladimdim/GladStoriesEngine. It is currently written in Flutter (web + mobile native). But I wanna to try some Pharo Spec2 (http://files.pharo.org/conferences/2019PharoDays/02%20Spec.pdf)

                                                                                                            1. 2

                                                                                                              R, Rstudio and the tidyverse. My comfort zone is in Python / Anaconda but many of my colleagues are moving to R (from Stata, SPSS, etc.) and collaboration is important to me. I’ve hacked on other people’s projects in R but I want a more systematic expertise of the whole stack. Any advice or recommendations are welcome!

                                                                                                              1. 2
                                                                                                                • More machine learning, since I am putting ML models in production, so there may be intricacies that I may need to know from an Ops aspect
                                                                                                                • Groovy
                                                                                                                • Kubernetes internals (as in more details about how it works than you ever need to know)
                                                                                                                • Redo SICP lectures

                                                                                                                I’d be happy with one deep dive in the above and good enough in the rest.

                                                                                                                1. 2
                                                                                                                  1. Keeping improving my C#.
                                                                                                                  2. Build projects, subsystems and systems rather than learning shiny new (hopefully)
                                                                                                                  3. Work towards becoming an architect (hopefully)
                                                                                                                  4. Kickoff work on my first OSS project
                                                                                                                  1. 2
                                                                                                                    1. Haskell in production (learn enough of it to really build slmethingy)
                                                                                                                    2. Get my radio amateur full license (and learn Morse)
                                                                                                                    3. Running (1/2 marathon in 3 weeks, full marathon in okt, yes I consider this learning since there’s more involved than just walking. I actually have to learn to run slower)

                                                                                                                    Keep my kids alive would be sweet as well, oh yeah and run/grow my consulting agency.

                                                                                                                    1. 2
                                                                                                                      • Arduino and electronics
                                                                                                                      • Maybe try on k8s, however I still see it as a worse systemd of containers world (and I became to slightly like systemd, at least on conceptual level)
                                                                                                                      • Calligraphy
                                                                                                                      • Maybe go back to writing Rust projects and learning cryptography (for libOctavo library)
                                                                                                                      • Learn about SAT solvers and how to implement them into scheduling
                                                                                                                      1. 2
                                                                                                                        • move my rust knowledge from “toy” to “production”
                                                                                                                        • I need to find a way to build UIs that doesn’t infuriate me. HTML/CSS/Javascript feels like pushing a shopping cart with 4 broken, squeaky wheels.
                                                                                                                        1. 2

                                                                                                                          I need to find a way to build UIs that doesn’t infuriate me. HTML/CSS/Javascript feels like pushing a shopping cart with 4 broken, squeaky wheels.

                                                                                                                          Have you found something already? :)

                                                                                                                          1. 1

                                                                                                                            Not yet :-) I played with Elm a few years ago and liked it, but haven’t looked recently.

                                                                                                                        2. 2

                                                                                                                          I know it’s kind of trendy/buzzwordy, but I’d like to have some experience with ML/deeplearning type stuff. I took all the deeplearning.ai courses but I still haven’t actually done anything with them and I still don’t feel like I have a good idea of how to sit down and just do something with it.

                                                                                                                          1. 2

                                                                                                                            I’m sure I’ll end up learning some tech stuff, but the only thing I’m currently planning on learning is jazz piano.

                                                                                                                            1. 1

                                                                                                                              Ooh, what’s your plan for doing that?

                                                                                                                              1. 2

                                                                                                                                I signed up for a year of this course when they had a big sale a while ago:

                                                                                                                                https://my.artistworks.com/george-whitty

                                                                                                                                although 6 months into that year I’ve spent very little time on it so far. ☹️

                                                                                                                            2. 2

                                                                                                                              I want to learn about programming by starting with Python. I’m not sure where to go from there. Maybe Lua.

                                                                                                                              1. 2

                                                                                                                                Unsolicited advice from an internet stranger: once you feel comfortable writing Python, pick up a project to work on instead of going for another language.

                                                                                                                                1. 1

                                                                                                                                  once you feel comfortable writing Python, pick up a project to work on instead of going for another language.

                                                                                                                                  I don’t plan to jump to a different language right away. I’ve got a couple projects I want to creat with Python first

                                                                                                                              2. 2

                                                                                                                                Rust is still in todo list for the last 2 years

                                                                                                                                I do want to invest more effort into automation my daily tasks as well. I will soon have a family to worried over so I need to spend time as efficient as possible :)

                                                                                                                                1. 2

                                                                                                                                  I started studying a masters degree (part time) in Politics and Technology, so I expect to learn a lot about politics. My aim in the degree is to understand the area between politics (and policy decisions in particular) and technology better, possibly with a view to moving into a policy role in the future (away from being a software engineer at the moment). That said, I’m keeping an open mind about the degree, and it’s possible I’ll learn entirely different things.

                                                                                                                                  In parallel, I’d also like to learn more maths, improve my German (I live in Germany so that’s always important), and continue my (hopefully) natural growth as a software engineer at work.

                                                                                                                                  1. 2

                                                                                                                                    I’m really aiming to get a blog running. I have a decent grasp of the topic I’d like to base my blog on, but I need to get past the paralysis of playing web-configuration-Lego.

                                                                                                                                    1. 2

                                                                                                                                      I used gitlab pages with hugo and google domains, has been simple enough. Github pages are the same idea.

                                                                                                                                      1. 1

                                                                                                                                        What @ahelwer said. Pick a static site generator and use whatever config pleased you that’s easy to plug in. Don’t over think it. You will never make 100% of people happy. Write what you want to write and do the best you can with presentation.

                                                                                                                                        I use Wordpress.com. That’s not a popular choice here because while I own my own data and make regular back-ups of all my posts, I don’t own the platform or the infrastructure, and that matters a lot to some people.

                                                                                                                                      2. 2

                                                                                                                                        More about machine learning framework scikit learn. I will be learning Golang And building data pipelines

                                                                                                                                        1. 2

                                                                                                                                          Maybe a bit of formal methods. I really enjoyed a lot of blog posts on this topic this year, and I wonder if formal methods can help us to better design complex systems by checking the soundness of a specification before writing the implementation. I think we actually struggle with this at work, we deal with a lot of features and business rules and changing something without breakage require knowing everything (which is impossible). I’m currently reading Software Abstractions and I have to say that it’s a great book written with beginners in mind. However I feel that I lack a lot of experience before being able to use something like Alloy professionally.

                                                                                                                                          1. 1

                                                                                                                                            Good question! Zig and Elixir probably. Maybe Pony. I should also practice more Danish. Want to also do more stuff on Webassembly.

                                                                                                                                            1. 1

                                                                                                                                              I should also practice more Danish

                                                                                                                                              Are you living in Denmark? My wife is Danish and she always tell that you need to live in Denmark to learn Danish. I tried to learn Danish, but it’s quite hard, specially pronunciation. I experienced Mandarin easier to learn than Danish

                                                                                                                                              1. 1

                                                                                                                                                No, but my mom is Danish so I grew up speaking a little bit, and I’ve lived in Denmark before. So, I usually know what it should sound like which makes pronounciation easier – though it’s still not easy. I mostly learn from books and Duolingo and movies, and I can practice with family. I find the language itself not too hard compared to stuff like French or Arabic.

                                                                                                                                            2. 1

                                                                                                                                              I’ve got a few things on my list:

                                                                                                                                              • Rust
                                                                                                                                              • iOS development (possibly mobile development in general)
                                                                                                                                              1. 1

                                                                                                                                                Here is my list:

                                                                                                                                                • Java, Maven, and the JVM ecosystem.
                                                                                                                                                • Scala, sbt, and Cats or ScalaZ
                                                                                                                                                • becoming a more well-rounded human being.

                                                                                                                                                I will focus most of my attention on the third bullet.

                                                                                                                                                1. 1

                                                                                                                                                  Learning plans:

                                                                                                                                                  • Learn more about physics, especially quantum physics, as preparation for possible grad school; I work with a bunch of physicists and all of them recommended the Feynman lectures while offering to answer questions.
                                                                                                                                                  • Probabilistic model checking - use PRISM to verify bounds on probabilistic consensus protocols from the snowflake family.
                                                                                                                                                  • Write a language server for a simple language (probably PRISM); I’ve never actually written a compiler before, so writing an incremental compiler that can gracefully handle malformed syntax while the user is typing should be interesting. I’ve heard about this thing called TreeSitter which is supposed to help.
                                                                                                                                                  • trad climbing
                                                                                                                                                  • Mandarin
                                                                                                                                                  1. 1

                                                                                                                                                    I’d like to learn a lot more about data analysis - I find the prospect interesting and would like to try it out. I need to get more proficient in Javascript as a part of a qualification, so that too.

                                                                                                                                                    1. 1
                                                                                                                                                      • JavaScript on a much deeper level than I currently do. More specifically, NodeJS.
                                                                                                                                                      • HTML5 on a much deeper level than I currently do. I’ve officially started a person/resume site project.
                                                                                                                                                      1. 1

                                                                                                                                                        Nim

                                                                                                                                                        1. 1

                                                                                                                                                          Learning about addative manufacturing and metamaterials - for my MSc Mechatronics & Automation thesis project.

                                                                                                                                                          And playing with Soft Robotics for fun :~)

                                                                                                                                                          1. 1

                                                                                                                                                            I had “learn Python and Japanese” for 2019, none of them were fulfilled (was too lazy) so they carry over.

                                                                                                                                                            1. 1

                                                                                                                                                              I won’t be learning a single new thing in 2020. Knowing less is knowing more.

                                                                                                                                                              1. 1
                                                                                                                                                                1. Brush up my C++ and learn OpenMP 1
                                                                                                                                                                2. Refresh my machine learning