Hacker News

Ask HN: What are you learning?

What are you learning right now? My last side project was recently derailed and I am curious to hear what other people are spending their time studying/learning about.

865 pointsblululu posted 2 months ago905 Comments
Twisol said 2 months ago:

I'm working through Aluffi's Algebra: Chapter Zero, which covers abstract algebra (groups, fields, vector spaces, etc.) with category theoretic foundations. I took undergraduate algebra several years ago, and I'm really interested in category theory from a compositionality perspective, so this is a good opportunity to brush up on both topics.

Aluffi is really well-written. It assumes some degree of mathematical maturity (so it's well-positioned for a second pass of the material), but has a generally conversational tone without being imprecise. The exercises are excellent, too, if occasionally difficult using only the machinery introduced up to that point. (Again, well-suited to readers taking a second pass at algebra.)

Why am I doing this? Leonard Susskind puts it well in this video [1]. To put it in my own words: our senses evolved for the physical world around us, and some of the most technical activities we do today are wildly underserved by our natural senses. That's why we build things like microscopes and telescopes and whatnot -- to extend our senses into new domains. Mathematical intuition is almost another sense in its own right: you gain the ability to perceive abstractions and relationships in ways that are just not well-described by sight or touch. I both enjoy this sense and find it valuable, so of course I'm going to continue honing it :)

[1] https://www.youtube.com/watch?v=2bgZmBAnhdg

christophergs said 2 months ago:

IIRC in this podcast: https://player.fm/series/superdatascience-2532807/sds-345-ma...

The interviewer is a researcher at Twitter Cortex applying category theory to ML. His intuition about the possible links reminds me of this kind of extending of senses you describe.

pieteradejong said 2 months ago:

Awesome, thanks! Listening now, and shared with brother.

BinaryIdiot said 2 months ago:

This really reminds me, it's been two decades now since I've taken _any_ Algebra. I'd really love to go re-learn it from the basics on up. I mean, I still remember a lot of it here and there but some sort of refresher course up to doing more advanced would be awesome.

Any recommendations?

xelxebar said 2 months ago:

Hell yes! I love hearing about people interested in abstract algebra and wholly support your endeavor! Here is a pretty decent resource on relevant texts:


That page in general is pretty gold for math texts in general.

Also, #math on freenode has lots of algebra-strong users on it, though depending on your luck some can be less helpful than others. I love chatting about this kind of thing with people, so if you would like an ad hoc mentor/study-buddy I would be more than happy to help. Feel free to email me at the address in my profile.

Good luck!

lanstein said 2 months ago:

Hi there, the email field doesn’t show up - you need to put it in your about section for people to see it :)

xelxebar said 2 months ago:

Uff. Thanks! Done.

BinaryIdiot said 2 months ago:

Cool, thanks for the info! I'm going to check out that list.

Twisol said 2 months ago:

I think Linear Algebra is traditionally recommended, since you can readily apply a lot of geometric intuitions while picking up the mathematical ones. The drawback is that you have to make sure you're not cheating yourself of the mathematics by over-relying on the geometry.

Sheldon Axler's acclaimed "Linear Algebra Done Right" is freely available as a download [1] through July due to the pandemic. I've not read it (yet!), but I've heard so many good things about it I feel comfortable recommending it off the cuff. :)

(Recommendation: try not to focus too hard on the matrices! They're just convenient representations (syntax!) for the actual things we care about: linear transformations. It's less geometrically intuitive, but it lays a much better foundation for algebraic widgets other than vector spaces. Use the wealth of geometric intuitions to jump-start your mathematical sense.)

I don't have a lot of recommendations for other algebra topics, unfortunately. My class textbook for abstract algebra was Dummit & Foote, which I found very dry and lacking in intuition. Aluffi is perfectly servicable if you feel good about your linear algebra; just don't feel like you have to complete every exercise.

Also, I'm a sucker for order theory, so if you're up for something a little less algebraic, pick up Munkres' Topology. I'm consistently surprised at how often topological and order-theoretic intuitions come up in software development. There's a close connection between topology and logic, so perhaps I shouldn't be so surprised -- but I haven't studied Stone duality at all, so it shall remain surprising for now.

[1] https://link.springer.com/book/10.1007/978-3-319-11080-6

joflicu said 2 months ago:

I wonder whether HN has heard of "Linear Algebra" by Hoffman and Kunze. I learned from it as an undergraduate and remember it being told that it was a classic. Another more abstract book is by the great Halmos: "Finite Dimensional Vector Spaces". Both books will stretch and entertain you.

billfruit said 2 months ago:

Sheldon Axler book for some reason is hugely hyped in HN always when this topic comes up.

But I do wish for a more comprehensive book on Algebra covering the entire breath of the field.

Matrix Analysis by Roger A Horn, seems a good book with most of the knowledge of matrices covered. Could be helpful for people working with Graphics.

david_w said 2 months ago:

Sheldon Axler's acclaimed "Linear Algebra Done Right"

Seconded. Highly recommended.

mjfl said 2 months ago:

You know something? I know a little abstract algebra: groups, subgroups, quotient groups, and the relvent theorems behind them. It's been disappointingly useless to me though. Maybe someday I will take the quotient group of two matrix groups... I'm not sure though.

Twisol said 2 months ago:

I certainly haven't applied any of those examples either. ^_^ Abstract algebra, topology, etc. are all studies of problems that already have mental frameworks. People already did an incredible amount of legwork building the apparati for understanding these fields (no pun intended). The value of learning these frameworks, if you're not going to work in those fields directly, is to understand how to build your own framework.

What kind of tools are in your toolbox for breaking problems down? Where is my problem different from others, and where is my problem fundamentally the same? How can we isolate these parts and handle them on their own terms? This is fundamentally mathematics, however it's ultimately expressed.

Here's a small selection of those ideas I've picked up from mathematics that have absolutely paid dividends in my day-to-day:

* The idea of a "homomorphism", a structure-perserving map between two different domains of discourse. The more I learn about category theory, the more I realize that homomorphisms are conceptually everywhere in software. The more I learn about domain-driven design, the more I realize the role functors (a particular kind of homomorphism) really play in software design.

* The idea of a "fixed point", for limiting behavior of processes. Fixed points are especially pleasant in domains where processes have some sense in which they "grow monotonically". When I can model a system as a series of operations that "add knowledge" and don't invalidate prior results, I know I have a wealth of analytical tools at my disposal.

* The idea of products (pairing) and sums (choice) in type theory, for modeling interactions between components. I feel like I'm in a straitjacket when using a language without sum types; I have to encode what I really mean using tools that don't let me get there directly.

petamask said 2 months ago:

What I got to think recently about the value of knowing more about stuff whose usage isn't imminently obvious is that when you expand your knwoledge, the 'range' of your world changes. So yes, almost by its nature, you would not use the stuff that you don't know much of, but you would be hemmed in by your own ignorance. On the other hand, by expanding your knowledge, you would also expand your range of experience (your world) thus find it more useful.

kralos said 2 months ago:

I studied vector mathematics in high school; matrix operations, dot product, cross product etc. All through these lessons I thought; "what a stupid thing to learn, who would ever use this?". Then after school I became a CAD/CAM developer and spent most of my time working with vector mathematics. It was with the help of OpenGL so I technically didn't need to understand how these operations worked under the hood but yep... what a stupid thing to learn indeed.

scythe said 2 months ago:

Most people start abstract algebra with groups, which is not surprising since the underlying definition is very simple and the basic examples are easy to understand. But abstract algebra only really starts to come into its own when you start to learn about rings and modules, which ultimately turn out to be important in proving most of the significant theorems in group theory as well.

One example I've been toying with recently is the link between complex and split-complex numbers, and the latter are isomorphic to a direct product of two copies of R. Putting these analogies together leads to a slight improvement of Karatsuba's complex number multiplication algorithm:


The extra storage use does call into question whether this representation can be helpful in practice, but the fact that these abstractions can be unrolled into code is pretty cool.

testerhn said 2 months ago:

If you don’t mind me asking, how long do you expect it will take you to go through that text?

Twisol said 2 months ago:

I'm not sure! There's a good amount of material that I've never dealt with before, so I'm sure there will be parts where I go relatively slowly. I also have a day job, so I only spend time with the book when I feel up for it. It's kind of an open-ended thing for me right now.

testerhn said 2 months ago:

Entirely understand, enjoy and good luck with it!

febin said 2 months ago:

I am curious about category theory? Do you have any resources on where it can be applied?

gsjbjt said 2 months ago:

David Spivak and Brendan Fong have been doing lots of work at MIT to evangelize applied category theory. See their recent books/classes:

Seven Sketches in Compositionality: An Invitation to Applied Category Theory https://arxiv.org/abs/1803.05316

Applied Category Theory mini-course: https://ocw.mit.edu/courses/mathematics/18-s097-applied-cate...

Programming with Categories mini-course (with Bartosz Milewski): http://brendanfong.com/programmingcats.html

Twisol said 2 months ago:

I'm no expert, so the best I can do is point you to the research community gathering around applied category theory.

* A conference series + workshop: https://www.appliedcategorytheory.org/

* A journal: https://compositionality-journal.org/

Check out some of the people involved in organizing these events. Names I've followed include John Baez, Pawel Sobocinski, and Tai-Danae Bradley (all of whom are amazing educators; check out their work!).

Tai-Danae Bradley wrote a pamphlet on applied category theory which is very approachable: https://arxiv.org/pdf/1809.05923.pdf . Also check out Jules Hedges' thoughts on the importance of compositionality: https://julesh.com/2017/04/22/on-compositionality/ .

viridi said 2 months ago:
harry8 said 2 months ago:


To do io you need monads. There's come from category theory. Haskell is great fun to learn, very different, focus on abstractions and abstractions of abstractions. One the one hand i highly recommend it. On the other the vast majority of people learning it never do any useful work at all in haskell. (This last statement will probably excite the haskell zealots whom I would encourage to reply with evidence.)

There are about 5 programs i know if that you might use written in haskell for a purpose other than programming a computer.

Anyway category theory definitely comes up in lazy, pure functional programming. A lot.

Twisol said 2 months ago:

As a great fan of Haskell myself, I would clarify that Haskell needs monads because of the (pure functional) restrictions it sets for itself, not because I/O itself fundamentally requires explicit monads. (Haskell itself supposedly used a lazy-list approach to input and output before monads caught on -- something like `main :: [Response] -> [Command]`, I think.)

That being said, when you explicitly model side effects, you invariably end up with some kind of monad in your model. Food for thought: in a logic programming setting, where your domain is some flavor of partially ordered set, monads are closure operators (a kind of monotone function). Closure operators give a cool foundation for the semantics of certain kinds of logic paradigms, such as concurrent constraint programming.

mikorym said 2 months ago:

This statement that you made—about side effects requiring monads—do you know a proof for that?

I come from the other side, Milewski's book is to me "Functional Programming for Category Theorists".

Twisol said 2 months ago:

Nope, no proofs :) Formalizing questions like this is one reason why I'm interested in category theory, so I don't think I have the tools to dig into this right now. But... "side effect" literally maens it doesn't show up in a normal input/output function signature, and in a pure functional language like Haskell, there are no side effects. Monads are a particular way of explicitly capturing side effects as a "separate" kind of thing from the function output using a particular species of functor.

I suppose my statement was a bit strong in that regard. Monads tend to arise very often in the way we build systems, but that doesn't mean they're the only way to cope with side-effects. It does seem likely that any way to capture "alternate outputs" from a function will end up looking like A -> T(B) in some category, though.

(Incidentally, if "A -> T(B)" looks funky, think about polynomials `f(x)` -- the function symbol `f` is just a placeholder for some expression involving the free variable `x`. Could be `A -> (B, String)`. The monad laws only make sure you have some foundation for reasoning about the extra type structure being added in by `T`.)

mikorym said 2 months ago:

Does this mean that you use a monad instead of a function?

Twisol said 2 months ago:

First, a clarification: when looking at a monadic action `f : A -> T(B)`, the monad here is just `T`. The action itself is still just a function. The monad `T` lets you add some extra structure onto your usual output type in a principled way.

That being said, it's true that I'm using `T` itself in a function-like way. Category theory does blur the lines between the two ideas: monads are "functors" with some extra structure, and functors are ("just") functions between categories that preserve categorical structure. But it's critical to notice here (and it's apparent from the type `f : A -> T(B)`) that `T` is not the same kind of function that `f` is. `f` lets you move from one type to another, by mapping each value in one to a value of another. `T` lets you move from a whole category to another category, by mapping each object/type in one to an object/type of another, and mapping each arrow/function in one to an arrow/function of another.

In other words, monads occur at the type level, whereas functions occur at the value level [1]. That means that, colloquially, you can't just use a monad "instead of" a function, any more than you can use "Integer" instead of "42". But as I alluded to above, monads over partial orders are closure operators, and we can often model the evolution of data over time as a partial order. So in that domain, monads literally are functions, and the "side effect" of a closure operator is mutably updating a cell by moving its contents up in the order.

If you model the evolution of data as a partial order, you can indeed obtain monads that more closely resemble normal functions. But a partial order is just a particular kind of category, so even here we've built a separate little domain over which our monad exists. (Of course, functors are all about crossing those domains in principled ways.)

[1] That's why it's not "IO ()" or "Maybe Int" that are monads; it's "IO" and "Maybe" themselves, which are well-behaved functions from types to types.

Twisol said 2 months ago:

I quite belatedly realized that you come from Category Theory, so most of my sibling reply is probably old news to you. Sorry!

The most charitable response would be "yes", but it really depends on how you model your domain. Most instances of monads in software are at the type level, not at the value level, and "function" doesn't usually make sense at the type level.

The example I gave of a monad over posets does arise in the semantics of logic programming, but I haven't seen explicit recognition of monads in that area. Not that I've looked that hard, yet.

yoshyosh said 2 months ago:

I'm learning how to make tacos starting with the tortilla. I'm originally from San Diego and have always missed Mexican food whenever I moved abroad. On a recent trip back to San Diego, I went to over a dozen Mexican shops to find particular flours to create tortillas from. I also went to Mexico twice just to find a specific brand of soft wheat flour. In total I think I experimented with atleast 5-6 different flours thus far. Since then I've made over 150 tortillas, learning things like the importance of the ratio of fat/water/flour, the proper heat, feel, and cook time. Rolling it with flour and without, hand patting vs mechanical tortilla presses. Simple mistakes are like the difference between making a cracker and a tortilla. There's also things like the elasticity of the dough the longer it sits so things like heated tortilla presses become important to help it keep its shape, since the heat slightly cooks the tortilla as it's being pressed into shape. Compared to pure mechanical ones where the tortilla will retract back due to no heat forcing it to sit in place. I'm still hoping to invest in a heated press once I return to the States since I can't find them in Amsterdam.

Overall I'm enjoying the craft of it all and will be soon moving towards learning the details that go into making sauces and carne asada.

mikorym said 2 months ago:

One trick for those that are not as advanced as you are: For whatever wheat you are using, add boiling water instead of cool water.

I've found this trick worked (a few years ago now) for a couple of trials where I wanted to use just flour and water. I think the boiling water makes the flour more elastic.

alexggordon said 2 months ago:

U̶n̶l̶e̶s̶s̶ ̶b̶o̶i̶l̶i̶n̶g̶ ̶t̶h̶e̶ ̶w̶a̶t̶e̶r̶ ̶r̶e̶s̶u̶l̶t̶s̶ ̶i̶n̶ ̶p̶u̶r̶i̶f̶y̶i̶n̶g̶ ̶i̶t̶,̶ ̶b̶o̶i̶l̶i̶n̶g̶ ̶p̶r̶o̶b̶a̶b̶l̶y̶ ̶d̶o̶e̶s̶n̶'̶t̶ ̶d̶o̶ ̶a̶n̶y̶t̶h̶i̶n̶g̶ ̶b̶e̶s̶i̶d̶e̶s̶ ̶s̶l̶i̶g̶h̶t̶l̶y̶ ̶s̶p̶e̶e̶d̶ ̶u̶p̶ ̶a̶u̶t̶o̶l̶y̶z̶i̶n̶g̶ ̶t̶h̶e̶ ̶f̶l̶o̶u̶r̶ ̶a̶n̶d̶ ̶w̶a̶t̶e̶r̶.̶ *This is probably wrong--see edit. Didn't know about this process because you'd never want to do it with anything you're going to add yeast to.

I've done a fair amount of experimentation on on bread making, and a very important step in bread making is autolyzing[0] the flour and water (letting the flour and water rest for a period after combining them).

However, the only reason water temperature matters in autolyzing is because you want an optimal temperature for yeast at the end of the autolyzation process[1].

More likely, what matters more is not the temperature of the water (assuming distilled, pure water, not subject to local tap water differences), but the time you let it the flour and water autolyze. My suspicion is that even though tortillas don't involve yeast, autolyzation is still important for optimal results.


Interesting, after doing some more research, I discovered boiling water is actually used to gelatinize flour--resulting in much more elastic dough, as you specify[2].

[0] https://www.kingarthurflour.com/blog/2017/09/29/using-the-au...

[1] https://www.weekendbakery.com/posts/a-few-tips-on-dough-temp...

[2] http://thebreadmaiden.blogspot.com/2016/02/the-science-behin...

wigl said 2 months ago:

Hot water encourages hydration of the flour and gluten development, resulting in a more elastic/homogeneous dough. IMHO, the hottest water from the tap should be good enough for that purpose.

munificent said 2 months ago:

True, but hot tap water doesn't always taste very good. If you've ever had seen the inside of a water heater, you will never want to consume hot water again. It's often full of rust and scale.

wigl said 2 months ago:

You and the other commenter are correct. Just meant that temp ~120F as a reference. Have lived in a calcite water area, no fun.

cferr said 2 months ago:

Water from the standing hot water heater typically doesn't taste as good.

yoshyosh said 2 months ago:

agreed with this, hot liquids def made things much easier

michaelbrave said 2 months ago:

I've seen a lot of custom made hotplate/pans made by a lot of my hispanic friends families for making tortillas, it's basically a slab of metal on a stove with a handle. I don't know anywhere that makes them since all of them are a kind of "I had a friend weld it for me" situation, but I found that those hotplates made making tortillas much easier.

tclancy said 2 months ago:

You mean a comal? I got one I love off Amazon a couple years ago for about $10. It's handy for all sorts of things because it heats faster than a large cast-iron skillet with sides. It's great for reheating pizza and melting sandwiches (couple it with a metal cover for doing just that for a double bonus).

yoshyosh said 2 months ago:

Good call, maybe I should just look into getting something custom made here. This is the press I'll likely buy once back https://www.amazon.com/Mexican-Electric-Tortilla-Gorditas-Bu...

kilroy123 said 2 months ago:

Oh man, this is a topic near and dear to my heart! I'm originally from California, but I lived in Mexico for several years.

I am dying for some good traditional tacos. (Currently abroad but far from Mexico)

The best tortillas I had were the handmade ones, made from organic blue maize.

yoshyosh said 2 months ago:

I want to live in Mexico for a little bit one day. I imagine you came out of that with a taste for tacos that can't be matched anywhere. Were there any spots that you really enjoyed that had the organic blue maize that you liked or was it mostly abundant because Mexico hah? I'll definitely bookmark it :-)

kilroy123 said 2 months ago:

I recommend it if possible. I had such an amazing experience living there. It's funny, I never miss the US but I always miss Mexico.

I mostly lived in Mexico City, but I've traveled a lot around the country and spent time living in a few other cities for shorter periods of time. I've probably seen more of Mexico than 90%+ of all Mexicans.

Some of the best food I've ever had was in a small Pueblo (town) called San Sebastián del Oeste in the state of Jalisco. [1] It's a small "magic town" in the mountains in Jalisco. [2]

Most of the best food I've had in Mexico was not in the big cities but in the small towns. Especially, the family-owned places where there's an older Mexican lady cooking up food. Cliché but true.

[1] https://en.wikipedia.org/wiki/San_Sebasti%C3%A1n_del_Oeste [2] https://en.wikipedia.org/wiki/Pueblos_M%C3%A1gicos

yoshyosh said 2 months ago:

Thanks for the suggestions, I'm planning on Mexico City and some other small towns like you mentioned. Will definitely add to the list!

michalu said 2 months ago:

Would you mind sharing some (or all) of your findings? I've never been to that part of the world (based in Europe) but been planning to prepare home made tortillas since last week. I'm struggling to find such in-depth insights on how to perfect the meal.

gh0t1 said 2 months ago:

Would you mind sharing your tortilla recipe and/or pointers?

yoshyosh said 2 months ago:

For sure, I mostly watched the Taco Chronicles Carne Asada episode on Netflix about 20x haha but here's a link to a similar recipe https://cooking.nytimes.com/recipes/1019621-sonoran-style-fl... however here's the gist of what's been working well for me so far since I love flour tortillas more so than corn:

Current recipe

130g flour

80g hot water (steaming)

35g lard

1g salt

Twice as much baking powder as what you see in salt (it weighs less so I don't see it registering on the scale)

Depending on your location, you may use 120-125g flour, 80g water because the water/environment is just different.

1. I typically place a pan on a scale and then put in 35g lard (pork and duck have worked well for me), then I put the pot on the lowest heat to melt. Fat is key, I tried using oil, butter, etc in the past and it didn't work well for me. It's also possible because I was butchering all the other steps too, this is what I call my cracker tortilla days :(.

2. Next I put on my kettle for hot water (80+ grams worth), it's fine if it boils but you mostly just want hot steaming water.

3. I put a bowl on the scale and pour in 130g of flour. Flour of course is another key element since not just any flour gets the job done, I've been experimenting and having some success with flours in Europe though that are more artisan bread friendly. Here are some Mexican ones https://allofeverythingblog.wordpress.com/2014/04/16/autheni... that you want to look for and you can also try to order some online (white sonoran wheat flour). Weirdly enough, there is a difference with El Rosal in America vs the ones from Mexico, the American ones are enriched and bleached which gives it a slightly diff dirt like smell and flavor. I recommend finding a way to get the flour from Mexico if possible.

4. I take the pot with fat off the fire, let it sit for a 1-2 mins.

5. I take the hot water off the fire, and pour it into a mug on my scale, looking for 80g of weight.

6. I put the baking soda and salt into the fat, along with the hot water from the mug, stir it up so it's all mixed.

7. Pour in the flour and mix it a bit with a fork, then knead it like you're folding the dough on itself for about 5 minutes. At first it may stick to your hands but after a minute or so that should go away, if it doesnt you need to add a tiny bit of flour, or water if its too dry. This is hard to explain since its more a feel. After 3 sessions or so you start to understand the consistency you're looking for.

8. After 5 minutes you should have a smooth dough that you can then pinch off into 8 tiny golf balls. If you let the dough sit here, which isn't necessary, (I've tried as long as 4 hours) it becomes quite elastic which makes it harder to press/roll the tortilla to a manilla folder thin thickness.

9. Roll them into a ball and then I recommend using a press with baking sheets so they dont stick, but you can also use a rolling pin.

10. If using a rolling pin, roll it up and down into a rounded button like shape, then turn that horizontal and do it again with equal pressure on both sides of the pin, this should result in a circular shape. I don't recommend adding flour since that will result in a more floury taste, but I'm still trying to figure out how to get around this without a press, since the tortilla will stick to your surface without baking paper. I don't recommend foil/plastic because the creases will reflect in your tortilla. At the end of rolling, they should be pretty thin (manila folder thin)

10. Make sure your pan is on medium high heat, takes about 5 minutes to get there, sometimes longer if using a cast iron. Then place your tortilla on the pan, it should bubble within 20 seconds, then you can flip it wait another 15-20, then flip again. This is pretty crucial, if the heat is too low its undercooked with no bubbles, if its too high it burns and the little brown spots will crack as you try to roll your tortilla. Heat's probably one of the most important parts which took us about 50 tortillas to learn.

11. After that you can place it on a plate or in a tortilla warmer.

Hope this helps! In the future I'll probably look into corn but that's definitely once I perfect an entire taco first.

michalu said 2 months ago:

Thank you, it's just what I happened to be looking for!

For those of us in Europe can you recommend your choice of flour (and perhaps some other replacement ingredients)

yoshyosh said 2 months ago:

I'm still trying to figure it out as well. I think for flour, experimenting with any artisan bread type flours would be good. The wheat flour at your supermarket may work though, you'll likely need to try it out and compare. The differences can start to become subtle. Vegetable shortening is also a decent replacement for lard, the ones like Crisco that come in a can and look like lard/non liquid oil. Some of my favorite taco places like https://www.instagram.com/elrusola/ use exclusively that.

I would also avoid things like Maseca if you have the time to try to figure things out, since they are a pre mix just add water type thing for corn tortillas specifically.

unixhero said 2 months ago:

Maseca. It's the same as they use in Mexico, and happens to be produced in Italy.

Get it at your local delicatessen, or your local Hyper Market.

simonsarris said 2 months ago:

I've been clearing land all day and bought 50lbs of buckwheat. I intend to try sowing/harvesting by hand. I will use this mostly for breads and pastries. This is something of an experiment.

Building skills, I'm almost finished a chicken coop. I made a dry stone arch bridge but it failed because the frame sank, I will try again. I am learning carving to make wooden animal toys for my child, who will be born in July (I have made a bear and a fox, soon an elephant, but they still need to be sanded). I would like to learn timber framing and make a small cabin on the land but it may be too expensive, now.

I'm trying to make an animated village for my site background with HTML Canvas, and originally I was making it procedurally, but its too ugly, so I will have to learn some digital illustration until it's beautiful.

CalRobert said 2 months ago:

If you have any pictures available (especially of this bridge) I'd be curious to see.

Are you tilling? Doing raised beds? We're planting a bit this year and dealing with weeds, etc. has been a hassle (also, most of the no-dig crowd seem to basically advocate using many tons of compost, which is great but not something you can assume a steady supply of)

simonsarris said 2 months ago:

There are lots of photos in this thread for the stone: https://twitter.com/simonsarris/status/1234186085200207872?s...

We're making semi raised beds up the hill: https://twitter.com/simonsarris/status/1246544902193909769?s...

With house compost and composted manure from a local farmer. The lower garden is mostly no till with added compost. We're not really sure what we're doing! So I can't really give advice.

I usually document what I'm working on on Twitter as a micro blog

japhyr said 2 months ago:

I grew up in Nashua, and when I looked at your posts about restoring your home it made me nostalgic for New Hampshire. I live in Alaska now and hope to spend the rest of my life here, but NH has the feeling of home that you can only get from having a childhood there. I found your posts a while back, and I always enjoy looking at what you've been up to when I haven't seen it for a while.

I used to run and bike past so many houses that look like this, and some part of me always wanted to do what you're doing. So thank you for sharing your journey!

simonsarris said 2 months ago:

Ah I grew up in Nashua too, at 37 Orange street, if you've ever seen the house (An 1840's house, just at the start of the downtown historic district)

japhyr said 2 months ago:

Here's how I tell people how my experience of Nashua has changed: "When I was young, we used to tell people how to get to our house by saying at one point, 'Turn right where the cows are. You'll go over an old stone bridge and then through some narrow curves on a few hills. Then turn right at..."

Then it turned into "Turn right where the cows used to be."

Then it became "Turn right at the ____ subdivision."

When I was young I did a lot of bicycling and running. In early high school (1980s) a friend and I used to ride our bikes as far as we could in the morning, and then try to find our way back without asking for directions. We found all kinds of old back roads and small cemeteries and old stone walls and other remnants of old New England. Now when I go back and go for a run or a drive it's endless subdivisions. I don't resent that at all, I know things grow and change. But it's certainly part of why I don't miss Nashua much except for nostalgia.

simonsarris said 2 months ago:

That's funny. I was born in 1988, so that world was gone by the time I got here. And even then, when I was a kid there were abandoned buildings to explore like the old tannery, and those are demolished now.

For all the changes they can't get the downtown to "work" and they are really, really bad at trying. I tried too: the mayor appointed me to the downtown improvement committee where I got to watch nothing happen first hand.

japhyr said 2 months ago:

I'm sorry to hear that. From a distance, it seemed like there was some interesting revitalization work going on in the downtown area. I remember going to a barbershop off Main Street as a kid with my dad every couple of weeks. Back then it was a classic old downtown, with shoe stores and shirt stores and barbershops and hardware stores and all that.

mraza007 said 2 months ago:

Out of curiosity How’s life in Alaska. It has always been a dream for me to move to Alaska since its a beautiful state and last thing what about the jobs there

japhyr said 2 months ago:

I love Alaska. I live in Sitka, which is a small town on the side of an island. We have about 10k people, but our town is a 14-mile by 1/2 mile strip of land on a 100-mile long island that's almost entirely wilderness. I like that we're a big enough town to have a thriving community - good educational opportunities, a variety of work available, an impressive arts community. But you can walk into the woods anywhere at the edge of town and immediately find yourself in actual wilderness. Subsistence is also a way of life for most people - almost everyone has a freezer with fish and wild game that they caught themselves.

The virus is going to have a serious impact here, like so many places. So many people depend on the summer tourism season to make a living. There are charter fishing operations, tour operations, retail operations. Those people and businesses will make almost nothing this year. And when this is over, how long will it take people to be able to afford summer travel again?

HeyLaughingBoy said 2 months ago:

It looks like you may have the same cart that I do. Hint: in case the bearings fail, go-kart bearings are an excellent and higher-quality replacement and they're the same size. I load mine with 200+ lbs of hay at a time and haven't seen any problems since.

wigl said 2 months ago:

When you get around to milling the buckwheat, see if you can get some coarse ground flour from both the kernel and husk. With it you can make inaka (country style) soba, which is really quite special. Buckwheat makgeoli is also easy and tasty.

samizdis said 2 months ago:

You might be interested in this chap's work. He came to prominence after his construction of a home was covered on a TV programme here in the UK. The link here is about that house - and the TV programme is well worth watching, too - and the rest of the site is about eco-building etc.


doctoboggan said 2 months ago:

You should look into Fabric.js, it makes working with an html canvas much easier, especially if you are animating it.

pvaldes said 2 months ago:

> I'm almost finished a chicken coop

May I suggest welded mesh?

thorwasdfasdf said 2 months ago:

sweet. I just made some buckwheat crepes the other day. Buckwheat is really high in magnesium which is awesome

shivekkhurana said 2 months ago:

I have lost my contract as a developer and am helping a non-profit [1] streamline their operations. The organization aims to provide food and heath kits to the marginalized. We have already distributed over 600 kits and are on track to reach a 1000 in this week. Each kit is designed to support a family of 4 for 1 month.

I was introduced to them by a friend who was helping them build an open platform [2], open in the sense that all processes, donations, procurement and guides are public.

Although my core competency is building and managing Saas, I took up the task of setting up their operations. I find a striking similarity b/w managing Saas and not-for-profit distribution.

We are relying heavily on Airtable.

Despite of being jobless, I feel less worried. The situation on ground is much worse than mine.

--- [1] https://karuna2020.org [2] https://open-data.karuna2020.org

david_w said 2 months ago:

Each kit is designed to support a family of 4 for 1 month.

That's some freaking "kit" !!!

shivekkhurana said 2 months ago:

For the curious, we also published how we assemble these kits: https://karuna2020.org/guides/ration-and-safety-kit-assembly...

ankit70 said 2 months ago:

Wow! I think why most people don't donate in India because they think their money doesn't make any impact.

https://open-data.karuna2020.org this is game changer. I wish more NGOs in India would do it.

And good luck!

vinay_ys said 2 months ago:

That's changing. People in India did donate in flying colors in the last one week. To help with Covid19, PM-CARES fund was announced by Prime Minister Modi on March 28th. In a week since then, it has raised almost a billion USD. The super rich did donate well. But so did the common people - via UPI digital payments. See news coverage here: https://www.moneycontrol.com/news/business/pm-cares-fund-her...

niyazpk said 2 months ago:

>> For just ₹750, our food and wellness kit can feed a family for a whole month.

750 INR = 9.84 USD

It would be nice if you can make it easy to provide donations from outside India.

shivekkhurana said 2 months ago:

We are working on that!

manoj_venkat92 said 2 months ago:

Nice work. I'm a indian dev. Let me know if there's any work for me to do.

dgb23 said 2 months ago:

This is inspiring and I also like the pragmatic technological approach.

I wish you all the best!

square_usual said 2 months ago:

Thank you for your service!

MAMAMassakali said 2 months ago:

How can I contribute on the software side?

shivekkhurana said 2 months ago:

The software has been built already. We might have minor updates.

There are other operations that you can help with, like blurring beneficiary faces using opencv before posting them on the internet. You can read more on the website.

Application and On-boarding Guide: https://karuna2020.org/guides/volunteer-application-and-onbo...

Volunteer Application: https://karuna2020.org/volunteers/

chairfield said 2 months ago:

I'm learning how to level up my more fundamental life skills: nutrition, exercise, and character. Character I'm learning through the study of The 7 Habits of Highly Effective People which I'm working through with a friend. For exercise, I'm enjoying learning a safe kettlebell program with the book Simple and Sinister. With nutrition, I'm just trying to cook/prepare all my own meals while keeping the ingredients healthy.

I've spent so much time studying skills more directly related to my work as a software engineer, or hobbies like photography, that this shift is both challenging and refreshing. I think it'll make a huge difference in the long run.

Kezzo said 2 months ago:

For nutrition and diet I can highly recommend "How Not To Die" by Dr. Michael Gregger: https://nutritionfacts.org/book/

Amesharea said 2 months ago:

Isn't he completely anti-meat / pro-vegan? His research is cherry picked to a large part and he usually cites epidemiological studies. At least he did when I got into nutrition.

Reading multiple books and doing research yourself is to recommend, at least there's one book with a whole website about the research used in each topic. ---> Boundless by Ben Greenfield.

rb666 said 2 months ago:

Both "How not to Die" and "How not to Diet" contain hundreds and even into the thousands of references. All meticulously fact-checked by a team of researchers.

If all the research points to "meat" being problematic, wouldn't a truthful book be considered "anti-meat"? I am a meat lover myself, but Greger seems to follow the scientific process to the letter.

JanSt said 2 months ago:

Quoting a lot of studies makes a great impression, but it's only worth it if you're not cherry-picking. Have you read the actual studies he's quoting? I did. Well, I read the first 50 or so. More times than not, they did not give what he says or he is interpreting the result so it matches what he likes them to say. Many are done badly. Many studies are done by hardcore vegans or animal right activists. He quotes the same studies multiple times, adding another references each time he quotes it again (making a great impression!).

A vegetarian diet may be the healthiest there is - I don't know. But Greger is biased for sure.

rige said 2 months ago:

I also highly recommend Dr. Greger's work! He also has a podcast and very informative website with tons of sources and further information.

mettamage said 2 months ago:

> I've spent so much time studying skills more directly related to my work as a software engineer, or hobbies like photography, that this shift is both challenging and refreshing. I think it'll make a huge difference in the long run.

It did for me. My path seems to be flipped. I did this stuff in my late teens and early twenties and after that I decided to get into software.

lifthearth said 2 months ago:

I have been pursuing similar goals. Except for exercise I've been learning rope dart and also have the goal of being more clean and being better at organizing my spaces. I have also found that focusing on the fundamentals has done wonders for my health, energy levels, and mood. I wish I had taken time to figure this stuff out better years ago.

throw1234651234 said 2 months ago:

To me, kettlebells are a hipster trend.

Bw: push ups, pull ups, crunches, supermans, squats, calf-raises, planks, wallsits, HPUs or easier variations


Weights: bench, rows, deadlifts, squats, OHP (google 5x5), pull ups, calf raises


run, bike, or swim Just something to keep in mind as minimum.

sn9 said 2 months ago:

They've been used for centuries in one form or another and are a fantastic tool, lauded even by world-record holders in the deadlift.

sharadov said 2 months ago:

No, they are not, if you don't have access to a bench and barbells, you can pretty much do all exercises and more with a couple of kettlebells. I use a 20 and 35 pound one. Btw, Kettlebells have been around for a long time in Russia.

mikro said 2 months ago:

I am learning game development in Godot, specifically with the intention of making an Oculus Quest VR game. I just finished the initial tutorial yesterday: https://docs.godotengine.org/en/3.2/getting_started/step_by_...

Alongside that, I am also watching Disney's Imagineering-in-a-Box, which describes how they develop lands and rides for their theme parks: https://disneyparks.disney.go.com/blog/2020/03/enjoy-a-one-o...

I recently finished Stanford's CS231N Computer Vision course from 2017 (watching YouTube + 3 Jupyter Notebook assignments). Also highly recommended. http://cs231n.stanford.edu/syllabus.html

thatwhinyboi said 2 months ago:

I'm learning Godot too. Although, my pace of learning is very slow, since I am also working from home. So I mostly learn on weekends or sometimes, for an hour at the end of the day. I started from this link: http://www.alexhoratio.co.uk/search/label/gitting%20gud%20at... These look good too: https://www.reddit.com/r/godot/comments/an0iq5/godot_tutoria...

bee123 said 2 months ago:

thank you for these links, its really helpful bro

billfruit said 2 months ago:

I am trying my hand at Defold. Though initially I found it very obscure and opaque, I am finally able to do small things on my own without constantly refering to the document.

Initially I found it difficult to grasp what exactly the game engine is making easy for you. Now I understand, the whole reactive message passing system simplifies game logic. Also the collision physics and handling too makes game logic simpler. And it takes care of animations like sliding, moving etc.

britzl said 2 months ago:

It is a bit different than many other engines, and it is not for everyone, but once you shift your mindset from large object oriented structures and start thinking about the relationship between your game logic and data in a way that works with Defold I find that you're able to create a lot in a short timeframe.

Insanity said 2 months ago:

I'm also learning Godot, it's great fun! Although I'm making something less ambitious than you, I just more or less finished a 'brickbreaker' type game. (more or less, all logic is in place but just 2 levels).

Also, no one asked, but I went with Godot instead of Unity because it was the only one I could get running without _any_ issue on Debian.

rgblambda said 2 months ago:

I committed the cardinal sin of starting the Unity "Create with Code" course last week and not progressing beyond the first module. Hopefully you are better at sticking to things than I am.

bee123 said 2 months ago:

Hey, I'm doing that too, learning DirectX to build megaman-clone and learn more about game development. I planned to learn Godot after that. shall you create a discord chanel? I'd love to join

ftl64 said 2 months ago:

you seem like a very avid learner! can you recommend a couple of courses you've enjoyed going through, or the ones that were most interesting and challenging?

mrfusion said 2 months ago:

Wow I want to do that too! Are there any existing godot based quest games so I can get an idea what the final product would look like?

mikro said 2 months ago:

There is a tutorial from Feb 28th which contains a finished project. https://github.com/GodotVR/godot_openvr_fps/releases

sergeyfilippov said 2 months ago:

thanks for Disney's Imagineering-in-a-Box!

nicolashahn said 2 months ago:

Stanford's CS143 Compilers course: https://courses.edx.org/courses/course-v1:StanfordOnline+SOE...

I've always been interested in making things that make other things, and compilers definitely fall into that category.

In the middle of the second assignment, the parser. It's a lot to consume, but I feel like the theory isn't particularly difficult, about half my learning has been getting to know the tools (so far: flex, bison). I've also spent an annoying amount of time on updating and configuring the VM, I guess that's a bonus lesson in Linux sysadmin-ing. It's also my first experience with C++, which seems useful to know.

I also started this course on web security: https://web.stanford.edu/class/cs253/. The first assignment was a lot of fun, the material is fresh, and it definitely seems like very useful information for anyone in the web stack.

I'm also learning a bunch of new cooking recipes, but who isn't nowadays.

HanQi said 2 months ago:

Thanks for your recommendation !I am pretty interested in web security partly because I want to start my own start up in two years, and I want to make sure my customer's data is safe. I am also interested in compilers but just can't bear C++, so I plan to take this course :https://www.coursera.org/learn/nand2tetris2. It doesn't limit languages you can use .So I plan to write the compiler by Racket(which can also sharpen my functional programming skill).

blintz said 2 months ago:

TA'd this class! It's a great intro, if a little dated. The best assignment, in my opinion, is the last (code generation). It's also the easiest to do independently, since you can just see if your compiled programs produce the same output as the ones compiled with the reference compiler.

The class assignments are missing a more thorough look at optimization. Might have to rely more on the lectures for that.

enhdless said 2 months ago:

I'm trying to learn to draw.

I feel comfortable enough with my technical skills where I feel like I can pick up a new language or framework with relative ease, so I want to switch gears and improve my drawing and visual communication skills. I believe that any project can benefit from a compelling visual component.

For now, I've been trying to start slow and just have fun; for example, telling myself to do three quick sketches of my dog every day and keep up a habit. Eventually I'd like to follow some more structured exercises and resources, like https://drawabox.com/.

Areading314 said 2 months ago:

Learning to draw is something anyone can do and is incredibly rewarding. It activates a huge part of your brain (visual) that starts firing when you see all sorts of scenes, faces, patterns, colors in real life. Try the book "drawing on the right side of the brain". Another good one is the Bargue sculpture drawing course.

throw1234651234 said 2 months ago:

Yea, right, until you try to get perspective correct.

If you understand this, you are a genius:


Areading314 said 2 months ago:

Don't worry about perspective drawing. This is a much more technical subject, separate from the skill of "drawing what you see".

throw1234651234 said 2 months ago:

I want to be able to draw from imagination. Drawing from real life has no appeal to me (though drawing realistically does).

tingol said 2 months ago:

Any artist that draws from imagination will tell you to draw from real life. Once you get that down it's waaaay easier since you have strong foundations in figures, perspective and forms. No one just started drawing from imagination.

enhdless said 2 months ago:

Thanks for your recommendations!

feiss said 2 months ago:

The pure act of representional drawing (drawing what you see, "copying it") needs just two basic actions: measuring and comparing.

For that, you have to teach yourself how to see things in the most objective way possible, without meaning. Don't see a dog or a head or a leg, but just a mass of shapes, lines, areas. Measure them, compare them. It's all about that.

People think drawing is in the hand, but it is in the eyes and in learning how to see things differently.

Good luck! It can be very therapeutic and rewarding.

billfruit said 2 months ago:

I recommend John Ruskin's classic "The Elements of Drawing".

"Supposing then that you are ready to take a certain amount of pains, and to bear a little irksomeness and a few disappointments bravely, I can promise you that an hour's practice a day for six months, or an hour's practice every other day for twelve months, or, disposed in whatever way you find convenient, some hundred and fifty hours' practice, will give you sufficient power of drawing faithfully whatever you want to draw, and a good judgment, up to a certain point, of other people's work: of which hours if you have one to spare at present, we may as well begin at once."

Krizzu said 2 months ago:

I actually started Drawabox for the same reason, and I must say that I like that change of mindset. It's feels good to start digging into something that is not directly related to software.

ninjamayo said 2 months ago:

I am trying to learn how to draw too and finding it very hard. I am using a Wacom tablet and man is hard to draw like that. I am learning face drawing at the moment and it seems impossible. More practice I guess.

bluetwo said 2 months ago:

I am going to try to get better at the thing that foils me the most: faces

platelminto said 2 months ago:

I'm studying Quantum Computing for Computer Scientists [1] - until I found this book, I thought anything covering quantum would be too physics oriented. As the title implies, this book is nothing like that, covering all the mathematics needed (matrices and relevant operations) to then understand various topics within QC ranging from Algorithms to Programming Languages to Cryptography, all in largely self-contained chapters.

I'm currently working through the Algorithms chapter, which builds up from Deutsch's Algorithm [2] all the way to Shor's Factoring Algorithm [3], but I will definitely end up going through most of the chapters.

[1] https://www.amazon.com/Quantum-Computing-Computer-Scientists...

[2] https://en.wikipedia.org/wiki/Deutsch%E2%80%93Jozsa_algorith...

[3] https://en.wikipedia.org/wiki/Shor%27s_algorithm

spurgu said 2 months ago:

Morse code. Started today by learning the alphabet in half an hour using a Google creative project[0] and quickly realized the challenge will be thinking in the sound/rhythm of the letters (instantly hearing/deciphering them) so I found a video[1] and then watched another video[1] which confirmed my hunch that it's better to focus on the sound than the notation.

Now I have GBoard w/ morse as my default keyboard on the mobile. Works well enough for short messages (and typing in URLs with autocomplete).

Edit: And I've been learning Spanish for months already so that's still active.

[0] https://morse.withgoogle.com/learn/

[1] https://www.youtube.com/watch?v=2_qQZ92onhU

[2] https://www.youtube.com/watch?v=D8tPkb98Fkk

IggleSniggle said 2 months ago:

omg. This was AWESOME! Thank you for sharing this. I just finished that tutorial and it was great. Very well done- Never done Morse before and 1.5 hrs later Im writing this comment (including punctuation...very slowly...but musically) via morse!

I think my favorite moments were learning that v uses the motif from Beethovens Vth and `!` = Candy+mustache

spurgu said 2 months ago:

> v uses the motif from Beethovens Vth

Brilliant observation, this one will be impossible to forget now!

edit: And I'm glad you found it useful! I've always wanted to learn Morse but never found the time/inspiration before that little learning app, which made the dive in so easy!

gentryb said 2 months ago:

I've learned a ton about the homeless population and shelter process.

I've been a volunteer leading health assessments and triage (via volunteer Telehealth nurses) at our local men's shelter. The shelter has even experienced a complete move in the last week.

A few huge points, however:

* Homelessness isn't always a choice - and especially in this situation it's causing panic.

* Our shelter system needs much greater support, and many organizations need better communication and integration.

* Paper is alive and well some places, others are quite a bit better technologically. There is much room for process improvement.

* While I am selfishly getting out of my own house and interacting with people, none of them are in anywhere near an ideal situation - and it's affected my mental health somewhat. I'm grateful for personal protective equipment, but reuse does concern me.

So much more I could go on about, but I can say during this period I've learned a ton more about homelessness, the process, and have kept people from entering the shelter thanks to our fantastic volunteer nurses who need to practice in a limited capacity for COVID-19 screening.

Volunteering is also something that has turned into quite a calling for me right now as well.

toss1 said 2 months ago:

>> I'm grateful for personal protective equipment, but reuse does concern me

To help with this, studies indicate that you can heat items in the oven at 70C for 30 minutes for effective sterilization without compromising the masks. More detail at [1]. My household is also using this technique on things like incoming mail, etc.

Bravo on your work - stay safe!

[1] http://www.imcclinics.com/english/index.php/news/view?id=83

narag said 2 months ago:

Music edition/production with Reaper:


They've been so kind to issue a temporary free license to help with the isolation. Their license model is very liberal anyway, but the gesture was well appreciated.

I own a Yamaha E363 keyboard and a Stratocaster, now I've bought a Behringer U-Phoria UMC204HD soundcard and an Audio-Technica AT2020 mic to complete the budget home studio. Amazon.es is working faster actually. However I wish they kept orders bundled, instead of delivering them apiece.

There are many videos linked from Reaper website, but as a Spanish speaker I prefer this guy, that's absolutely great:


I'm also going to learn to airbrush. I've had the gear for some time, but now I'm seriously putting the time.

kitotik said 2 months ago:

A very cool, overlooked, and timely feature of Reaper is NinJam which is a way to “jam” with people remotely through a fixed time-delay.

It’s been around for at least 15 years, but looks like the author has recently started updating the feature again. Check it out!

arbol said 2 months ago:

That's such a good idea! How are the latencies worked out?

boomlinde said 2 months ago:

The delay is extended to a musical unit, I think a full bar or a measure. So the latency is "musical" but really high.

kitotik said 2 months ago:

You set a preconfigured time - I think it defaults to 1 bar.

It takes some practice and getting used to, and obviously isn’t quite the same as being in the same room, but it works well enough to stumble upon some great serendipitous moments like any good jam session :)

cableshaft said 2 months ago:

Thanks for the heads up about Reaper! I've been meaning to get back into music production.

said 2 months ago:
nojvek said 2 months ago:

How to raise a good human, be a good dad and husband.

Relationships take a lot of commitment and effort. It took me a while to learn how to communicate effectively with my wife so we’re fighting problems and not each other.

Babies really test your patience. They are hard to reason with so I have to keep my emotions in check and always be calm even if she is throwing a massive fit. But sometimes they really get your nerves when they cry non-stop for half an hour.

w4tson said 2 months ago:

It’s been both great and terrible to be cooked up in a small flat with my wife and child. I’m always happy to see comments like this. I wonder if there’s a community for the M(o|u|a)ms/Dads of HN

Any tips for communications with partners?

rukuu001 said 2 months ago:

What. A. Minefield.

Here's what we're trying

- When she or I are upset, name the emotion at the earliest opportunity, e.g. "Hey, what you said back there hurt me, and I'm kind of embarrassed to be hurt by something like that but that's how I'm feeling right now..."

- This sounds like a bunch of whiny nonsense, but we've both found it takes a lot of heat out of a situation, and avoids a snide or sarcastic comment that might make things worse later. This is the slow-burn kinda situation.

- Sometimes there's no time to think about that and one of us just exclaims in anger or hurt about something. I don't know what to do about that; it just means there's a lot of work to do afterwards.

- Good luck :)

Edit: oh yeah, this assumes you're both ok having a difficult conversation in the first place. If implied criticism is a no-go zone, then... I wish you even more luck :)

liziwizi said 2 months ago:

most important is to come from a place of respect and to talk about the issue, not about the person. it should be about solving the problem together. never about pointing blame.

when i was still stuck in relationships that didn't work, most discussions were always about "who did (or did not do) what and why that was terrible". these days we talk about what problems we face, what we tried, how they didn't work and ask each other advice on how to deal with the situation.

i had to learn to be more humble and own up to my faults (that was hard). i also had to learn to reign in my temper when i was getting frustrated. (that felt impossible, but turns out to be easy when the discussions are not personally directed)

and another thing that has a huge impact on our communication: we validate, compliment or appreciate each others efforts constantly. we talk more about the good stuff than about the bad stuff, and that really makes a difference.

and lastly: allow each other personal space when needed

i know this is not really "new knowledge". every talk or tutorial about communication will tell you similar things. but it is what works for us.

david_w said 2 months ago:

"we talk more about the good stuff than about the bad stuff,"

20:1 minimum good to bad. Minimum. Even one "bad" a week may just be too much.

Also, limit the relative number of times you approach with something that "needs doing". You can't let your relationship turn into mere help-mate-ism.

MikeTheGreat said 2 months ago:

First - this is an amazing comment! Solid, concise, and really highlights the important stuff.

John Gottman has a number of books on this topic and I'd highly recommend them.

thomk said 2 months ago:

Thank you for mentioning John Gottman this looks helpful.

odysseus said 2 months ago:

Three tips that have helped with my wife and I:

1. You can usually recognize when you’ve said something in a tone that you regret. Within a few minutes of saying it, try to preemptively and meaningfully say you’re sorry for that tone.

2. If you’re discussing a topic that one or both of you are very passionate about or that triggers high emotions, each person should stop and write down what the other person is saying. Then repeat back what you understood about what the other person said. This helps both people understand that they are being both listened to and understood, and usually calms everything down. (We’ve only needed to do this 2x in several years of marriage, but it’s been helpful each time.)

3. A tough one, but try not to discuss any hot button topics when one or both of you is tired and/or hungry and/or driving.

Finally, someone else in the thread mentioned high ratios of good/complimentary interactions to bad ones. This is very important. Be grateful for your spouse and show it, every day. This will go a long way toward improving most any relationship.

a9zz said 2 months ago:

It's both joyful and really painful. I have a one year old and we are on 60sqm with no balcony. My wife is pretty far along on the ADHD spectrum, which has its upsides but is definitely NOT conducive to getting any kind of deep work done. We fight often these days if i'm being honest. Luckily we are good at moving past shit

My focus is on embracing our current state as the new normal and trying to be happy and calm amidst all the uncertainty. My son is blisfully unaware of everything and truly a joy to watch.

In reply to op: I'm currently studying (relational) databases.

jp42 said 2 months ago:

You are not alone. I have a toddler and I am going through exact same situation. I can totally relate what you said. It's very hard, but I think slowly we learn to navigate it.

tmaly said 2 months ago:

I highly recommend taking a walk outside if you can. It is really challenging to be stuck inside right now especially if you have kids.

reallydontask said 2 months ago:

> But sometimes they really get your nerves when they cry non-stop for half an hour.

For no apparent reason ... sigh

Are you using any resources that you'd care to share?

MikeTheGreat said 2 months ago:

Develop a checklist of stuff to try:

1. Does the diaper need changing? 2. Does the baby want a diaper? 3. Does the baby want to be held? 4. Maybe some clothing is uncomfortable for it? 5. Does the baby need to be burped? 6. etc.

Walk through the list until something works or until the baby + you pass out. If you spend 2-5 minutes on each item it'll take maybe 20-30 minutes to go through it. If it doesn't work the first time (and you haven't thought of / noticed anything else while going through the list...) then do it again.

It feels good to have a plan, it gives you something to do that might help, and for those occasions when nothing works it at least helps pass the time :)

TeMPOraL said 2 months ago:

7. Is the baby hungry? 8. Is it too cold/too hot for the baby? 9. Does the baby have a rash in the diaper area? 10. Could the baby be teething (may start earlier than 6 months in)?

I agree, it's good to memorize or even write down these things. Over time, one learns to move quickly through that list, and which items are more likely at what time.

(RE 8. it's easy to worry so much about the baby having it warm that you end up overheating it.)

MikeTheGreat said 2 months ago:

These are great additions!

I can't believe I listed diapers twice and left out "Does the baby want a BOTTLE" - D'oh!! :)

TeMPOraL said 2 months ago:

Well, the reason to list those steps in the first place is because in between changing diapers, clothes and room temperature, one can actually forget about giving the baby a bottle. I know I did a few times :).

(It's easier now; mine is 8.5 m.o. and we've finally settled into a proper feeding rhythm, so we know when to give food by looking at the time.)

ascii_homer said 2 months ago:

I found this useful: https://raisingchildren.net.au/ and Quebec has a guide for pregnancy to 2 years old: https://www.inspq.qc.ca/en/tiny-tot/consult-the-guide

For the first few months I found this book great: https://www.amazon.ca/Happiest-Baby-Block-Harvey-Karp/dp/055...

mettamage said 2 months ago:

I'm learning pentesting for fun. I'm mainly active on hackthebox.eu. I might get my OSCP one day, for fun as well. I do still think the certificate comes in handy despite the fact that I'm applying for web developer positions at the moment. I'm happy I'm learning this though, I'm already noticing that I develop differently, because the little I've learned about pentesting taught me that true cyber criminals are hungry to break into your systems, and they only need one shot, one small misconfiguration and they're in. Or at least, that's how it works on hackthebox ^^

I'm also doing some OSINT (open-source intelligence) by simply giving myself assignments. The assignments on hackthebox.eu were not all that great and OSINT is one of the few disciplines that you can do in the real world without permission, since it's all about accessing public data.

I flip back and forth between the 2 disciplines. I don't know why it attracts me. It just does. I also notice that learning this stuff is completely different from programming. And to an extent it's one of the few ways that gives me the feeling that I'm "living and moving around" in cyberspace as opposed to "constructing" (i.e. programming) in cyberspace. I guess typing cd and ls on a lot of Linux and Windows practice boxes give that effect. And the cool thing is, you learn a lot quicker about all kinds of services. For example, I never knew about rsyslog, logger or the mqtt protocol (Linux boxes). I never knew about Kerberos, Active Directory and smb (Windows boxes).

I'm happy I did some master courses in cyber security beforehand. While I'm really new to a lot of things, I've gained a lot of what psychologist call crystalized intelligence in this area. So it's all quite easy(ish) to understand. Things get harder when I have to reverse engineer binaries or debug in x64 assembly. It's still doable though.

CodeGlitch said 2 months ago:

I too have an interest in OSINT. Inspired by the work of Bellingcat [1] (who have uncovered some serious warcrimes through their OSINT work).

[1] https://www.bellingcat.com/

eqqn said 2 months ago:

I am also learning pentesting, for the cert and to have some methodology in my job ( somewhere between devops/compliance/security). First week into PWK course, I used hackthebox and thecybermentor's practical pentesting course to build up confidence to attempt getting that long wanted OSCP title.

mettamage said 2 months ago:


I've heard that OSCP is a lot more CVE based than hackthebox. It apparently also has a lot more rabbit holes compared to hackthebox. I haven't checked out thecybermentor yet, but a friend of mine has and he seemed to like it as well.

ssklash said 2 months ago:

It is more about identifying CVEs and exploits than HTB is, but there is still a good amount of finding misconfigurations, like HTB has. OSCP helps you build a methodology and a mindset for pentesting, and finding CVEs with existing exploits makes that a little easier than HTB, where you are not under time pressure. HTB would be my goto to prep for OSCP, I wish I'd found it before.

mettamage said 2 months ago:

Anyone who's up for doing hackthebox together, my email is in my profile. I think it'd be a ton of fun to team up!

strategarius said 2 months ago:

Currently I'm learning video editing on Davinci Resolve.


I collect examples of advanced C++. Noticed the lack of educational content at this subject, and planning a short course, something like "Exceptional C++" style, but on video.

In our distributed team we have a practice to make video presentations for colleagues, so I have experience of delivering visual content to tech audience. However, I see that particular course like a high-quality content, with diagrams, animations etc.

That's how I found Davinci Resolve, and you know, it's fun to learn it (even it crashes more than production-ready application supposed to). The only thing that buzz me, is not to forget about the initial goal:)

Farbklex said 2 months ago:

Video editing is a very usefull skill. It's rewarding to be able to quickly trim, stitch and edit some clips and maybe throw in some effects here and there.

Davinci Resolve is a surprisingly good tool and for a non-professional it would be my no. 1 recommendation.

freddref said 2 months ago:

I edited my first video this weekend after installing kdenlive and watching a couple of tutorials on youtube.

Learning even the simplest things in another area can be very empowering and rewarding.


Super slow intro to the tool itself: https://www.youtube.com/watch?v=LIIdOlnpRzQ

Simple but effective techniques: https://www.youtube.com/watch?v=cX_xMXzr2XY

dceddia said 2 months ago:

Building a guitar! It's my first attempt at building an instrument. It's going well so far, mostly using threads from TDPRI as guidance and a body template from there as well. I opted to buy a neck from Warmoth since building a neck seemed especially intimidating and requires more special tools. Today I finished soldering the electronics, bolted the neck on, strung it up and it actually works! Now to take it apart and work on the finish... lots of sanding ahead.

(I'm pretty sure it's uncommon to put the whole thing together before finishing, and then take it all apart again, including the electronics... but I wanted to know nothing would be terribly wrong before I spend hours more on finishing!)

TDPRI's Tele Home Depot is a great source of info- https://www.tdpri.com/forums/tele-home-depot.46/

My own build thread: https://www.tdpri.com/threads/first-build.1011061/

TrackerFF said 2 months ago:

Having put together, and modded a lot of guitars in my life, just make sure that the nut is cut properly, that the neck and body fit is nice'n tight, and that the neck is properly leveled.

That should fix most errors. Learning how to level frets is a truly valuable skill for any guitarist. If a guitar is fundamentally sound (quality wood, straight neck with functioning truss-rod, good fit between neck and body), then a good fret-level and properly cut nut will clear most problems.

myguysi said 2 months ago:

That’s awesome! I did the same a couple of years ago (took about 1 year to complete) and it’s one of the things I’m most proud of, so I hope it feels as fulfilling for you too!

dceddia said 2 months ago:

Cool! Thanks! I'm most worried about the finishing part, honestly. What did you end up doing for it?

I keep debating between whether to leave the wood visible (with Tru Oil or wipe-on polyurethane), or paint it (lacquer, super labor intensive, slow, expensive), or dye/stain it and use a clear finish on top of that.

myguysi said 2 months ago:

I ended up filling the grain with wood filler dyed black and make it pop and then layered a few coats of trans-red from a spray can so you can still see the grain. It’s not a glassy finish but that’s what I was going for and the colour is amazing! I always wanted a red strat with a black pickguard and gold hardware so I thought why not!

I’m personally a fan of leaving the wood visible but the best thing is you can do whatever you want and it’ll be awesome because you made it.

sunsetSamurai said 2 months ago:

this is so cool, I've been meaning to get a bass guitar and start learning, but I'm always busy doing something else.

dceddia said 2 months ago:

Pick one up! There’s no time like the present :) It’s a long-term learning thing anyway, definitely one of those “best time to plant a tree is 20 years ago” things.

focodev said 2 months ago:

So cool!

ericax said 2 months ago:


After reading about storytelling, I realized that I'm as fascinated to a well-crafted world as good plots and characters.

There's not much to read about, as a fiction world can contain as much detail as the real world. I'm spending time looking at the fiction worlds that I like and taking them apart.

As an exercise, imagining places and races is also interesting. You'll be amazed by the amount of details required to fill the gaps in order to "see" something in your head.

christophergs said 2 months ago:

NK Jamisin (3 time Hugo winner) talks about world building as a technique. It's something mentioned in this great video about why "The Expanse" is awesome: https://www.youtube.com/watch?v=cGIovBe7pL8

mkl said 2 months ago:

*Jemisin: https://en.wikipedia.org/wiki/N._K._Jemisin

Hugo Award for Best Novel three years in a row!

ericax said 2 months ago:

Gotta watch that, thanks!

iratewizard said 2 months ago:

You would probably have fun building a hard magic system. Hard magic being a system that has strict rules for how things work. Soft magic being Gandalf style where how it works and how it's limited is unknown.

CGamesPlay said 2 months ago:

One thing I've been thinking about recently is conservation rules. are there any popular fiction worlds that explore conservation of e.g. magic? The only example I presently know about is https://www.hpmor.com/chapter/78 (search for "conservation").

whatusername said 2 months ago:

Most authors will sacrifice some amount of "realism" in the interests of story-telling (compared to Yudkowsy with HPMOR at least). A couple of Magic examples come to mind: * Brandon Sanderson does a lot of Magic impacting Physics. The magic is often proper unexplained magic - but it's impact on Physics is pretty well modeled. In the most recent Mistborn book - there's a remark that explains that when the character magically reduces their weight while flying through the air - their velocity increases. I think Brandon points to that - but says that he loves the consequences at that level - getting to the point of red-shift/blue-shift for bubbles of fast/slow time is story breaking. See also his laws of magic: https://www.brandonsanderson.com/sandersons-first-law/ * Pat Rothfuss in the Kingkiller chronicles has a magic called "Sympathy" where rule 3 is "The law of conservation".

ericax said 2 months ago:

Hard magic system sounds very interesting.

Although "unknown magic" and "ancient powers" are convenient, it bothers me to think there's no consistent system underneath it.

In the setting of the world, people in the world can view it as unknown, but the author is the god and should have a decent idea of how everything works.

echelon said 2 months ago:

Would you be interested in doing that as a profession? Storytelling and world building is sorely underappreciated.

I don't have much capital right now (I haven't raised - just personal savings), but I'd like to hire some folks to do this for my startup.

spoiler said 2 months ago:

I've done a few world building workshop and magic-system designs[1] workshop in a "nerdy-community centre" a few years ago. The community and interest for this is generally pretty small.

I was thinking about doing an interactive online version now that we're all stuck inside.

[1]: Someone in another comment mentioned designing hard magic systems, but there doesn't a whole interesting world of different magic systems out there: https://en.wikipedia.org/wiki/Hard_and_soft_magic_systems

ericax said 2 months ago:

Curious, why do you want to do that for your startup?

Is your startup a game studio?

bob90 said 2 months ago:

If you speak French, there is a conference by one of Ubisoft's creative directors about the Might and Magic world building techniques and choices on the BNF's Fantasy podcast.

andrepd said 2 months ago:

Yep! A recurring hobby of mine is writing about a not particularly deep universe I was fond of in my teenage years. World-building my own canon so to speak.

selfish-duck said 2 months ago:

Although you said there is not much literature around the subject, did you find anything? This has always been one of my favorite aspects of The Elder's Scrolls and, of course, Tolkien.

NortySpock said 2 months ago:

Not literature, but a YouTube playlist. Edgar from Artefexian does short videos on realistic worldbuilding and constructed languages.

https://youtu.be/J5xU-8Kb63Y How to build a classical solar system

ericax said 2 months ago:

As a reference book, the Planet Construction Kit is good and comprehensive.

Although reading reference books like this can be a bit dry, it helps you recognize the elements that an author makes up for his or her world when you see them.

nstart said 2 months ago:

This sounds fun. Curious what you read about storytelling that sparked an added interest in world building?

tomxor said 2 months ago:

... Don't laugh: C

I learnt programming mainly through various scripting languages, some of which had some relatively simple visual output available, which I personally found invaluable for learning and visualizing.

I realized that better visual output was the main thing holding me back from doing more in C since there are so many options, often complex, involving much boilerplate. So my mini project is essentially exploring the simplest, most minimal possible ways of drawing pixels on the screen in Linux.

So far tried fbdev (but doesn't work well with X), now playing with XCB.

idoby said 2 months ago:

Why would I laugh?

I've done a lot of C programming over the years and I still consider it one of the most elegant languages I've had the opportunity to work with. With the right skillset, you can be as productive as a programmer of any other language or system.

And it's great to see where some of the things we take for granted in programming, come from.

If you want to draw pixels, give Cairo a try. It's fun to use!

tomxor said 2 months ago:

Nice to hear from people still enthusiastic about C :)

Thanks for the suggestion, I hadn't considered Cairo, for some reason I thought it was only for SVG, maybe from it's use in Firefox. I will try it out once I get out of XCB territory.

zetalemur said 2 months ago:

> So far tried fbdev (but doesn't work well with X), now playing with XCB.

Another idea would be to use SDL which essentially provides functionality to make windows, draw pixels and handle input/output. If you do not want to use any library at all and do not mind low "resolution", you could use your terminal as window and regard characters as pixels. Sure, there is the curses library to abstract away different terminals, but if you do not care about platform independence you can just directly write escape sequences to the terminal.

tomxor said 2 months ago:

I was indeed trying to avoid the big libraries, since this is just for personal use I don't care about cross platform which allows me to escape these potentially - I may well end up back at the SDL + OpenGL level later when features or performance are a concern.

My current goal is to find a balance of least dependencies and least boilerplate to draw a pixel buffer so i can play with C, nothing more. Once I can do that without lots of fluf then i may be attracted to more advanced or complex methods later on when performance is desirable.

I have done some visual things with the console and printf alone in the past which gave me a taste of C, but now I want some real pixels :)

mntmoss said 2 months ago:

You may want to try raylib. It's written by a teacher who uses it in the classroom and geared for this kind of "let me code games in C but with only one dependency" goal. It does more than you need but that's a common theme of useful libraries.

tomxor said 2 months ago:

Thanks, that sounds about right, i'll take a look.

kovac said 2 months ago:

Have you tried A allegro5? Any take on which is better? I've tried both, but I'm too much of a newbie to have a reasonable opinion. Thinking of getting back on to one of the two.

jfkebwjsbx said 2 months ago:

Then you should be using X11 directly!

tomxor said 2 months ago:

My goal is to attain a balance of least dependencies and boilerplate. From what I've read so far it seems that implementing xclient protocols directly would require considerably more boilerplate than using XCB, (and my understanding is that XCB is just that: a generic xclient implementation and nothing more).

Please do elaborate if I'm wrong though! I would be delighted if it's possible to implement a simple subset minimally purely for displaying a pixel buffer without XCB?

CmdrKrool said 2 months ago:

I'm not necessarily recommending you go this route in general, but this is a fantastically actionable article for going deep on various Linux graphics APIs including X11 right on the socket: http://betteros.org/tut/graphics1.php

tomxor said 2 months ago:

Yes, I really like this article, I used it to get going with fbdev before I moved on to XCB, but only skimmed the remainder since it was avoiding libraries completely it was getting a little verbose (although on second thought DRM doesn't look too bad, and also I missed libdrm should probably see how much that can do).

Just realized now revisiting this that the author also showed how to directly implement xclient! the example is rather large confirming my suspicions RE parent comments.

jfkebwjsbx said 2 months ago:

I meant using Xlib, the client library for X11, which is going to always be available if you are using X! You can of course implement the library parts yourself, but that is more boilerplate.

tomxor said 2 months ago:

XCB is actually lower level than xlib, in that sense it is more directly using X11 because unlike xlib it only really implements the client protocol and wraps it up into an interface.

I was however planning on trying out Xlib anyway on my path of exploration from simplest/lowest level to complex/higher level libraries: fbdev, DRM < DirectFB, libdrm < XCB < Xlib < SDL et al.

DizzyDoo said 2 months ago:

Out of interest, why would people laugh at someone learning C? I know plenty of people using C in all manner of domains, choosing it over C++ or Rust for fair and sensible reasons - I'm not a C person myself, but it certainly seems extremely useful to have in the toolkit!

tomxor said 2 months ago:

I want to learn C not (only) because I think it's useful, but because I think I might like it. I have a particular interpreted language that I like, enjoy and know inside out, now I want to know a compiled one in a similar way.

To answer your question: I get the impression from various tech news on "hot new languages" that C is the incumbent systems language that people put up with but don't really love, and yet I want to try and love it. I've developed a taste for minimalism, simplicity and a degree of brevity in programming, I have a feeling I might find C more suited to me than C++, Rust, Go, Java etc for this reason despite the lack of "modern" features.

juped said 2 months ago:

I love C. Lots of people do.

wyck said 2 months ago:

I've noticed this a lot on hackernews, there is an apprehesion to say certain things as though there is some sort of pedigree or gating when discussing topics, especially when it's personal...there isn't.

Case in point: The comment below mine...

selfish-duck said 2 months ago:

I started coding 10 years ago (damn I just figured that...) learning C at my engineering school for 2 years. Never had to use it ever since (mostly working front-end and webAPIs) but I'm still glad I studied it to learn the programming foundations. I would probably choose Rust or Go today though.

MaxBarraclough said 2 months ago:

> why would people laugh at someone learning C?

I suppose because of the perception that many programmers already know C. Which is true, but only some fraction know it well, which is far more important in C than in most modern languages.

shrimp_emoji said 2 months ago:

>choosing it over C++ or Rust for fair and sensible reasons

I don't think such reasons exist.

I don't think C/C++ should be used when superior alternatives exist (Rust). It's like smoking; you're just hurting yourself.

Unless you're being like the programming equivalent of a steam engine enthusiast or a historian. (In a world where most of the industry is still using steam engines cuz we're in too deep and must ride the inertial tide for at least a few decades.)

tomnj said 2 months ago:

There are plenty of reasons to still learn C even if better alternatives exist for most new projects. There’s so much important software out there in C (and C++), for example the Linux kernel.

tomnj said 2 months ago:

And C is still king in many domains, eg embedded development.

wyck said 2 months ago:


runetech said 2 months ago:

Clojure, Fulcro and Kafka Streams.

All 3 are a mind expansion coming from other tech. Cannot recommend them enough :-)

https://clojure.org/ https://fulcro.fulcrologic.com/ https://kafka.apache.org/documentation/streams/

gotts said 2 months ago:

I'm a big fan of the first two but why KS mentioned in this group of 3? What's so special about it in this combo? Or is it unrelated?

naikus said 2 months ago:

Sketching on paper. There is a great free resource for learning how to sketch.


sh87 said 2 months ago:

Had never heard of drawabox. Loved their description[0]. Resonated so deeply with me.

> Drawabox's goal is to provide beginners with a strong foundation, and to equip them with the things a lot of other courses and tutorials tend to take for granted.

> It is not going to make you a professional on its own, but it will teach you how to practice, how to use the resources available to you on the internet, and equip you with the tools and skills you need to take advantage of them


brujo696 said 2 months ago:

Eternal love to drawabox

tmaly said 2 months ago:

wow this looks good. I will have to try this with my daughter. Thank you for sharing.

metasaval said 2 months ago:

It's a basic one, but learning an instrument! Namely, the drums. I've tried guitar and bass before, but neither stuck. I'd been thinking of getting a e-drum kit for a while now, and the quarantine gave me a good excuse. I'm loving it so far, just playing along to songs I like, but since I'm self-learning I can already tell my technique and drum kit setup is off. I keep having to adjust the drums, the snare especially, and haven't found the optimal position for everything yet. But it's grabbed me more than any instrument before, and I'm having a blast.

The kit I got for those curious: https://www.guitarcenter.com/Alesis/Nitro-Mesh-8-Piece-Elect...

Throne: https://www.guitarcenter.com/ROC-N-SOC/Nitro-Throne-Tan-1500...

mildmelon said 2 months ago:

I've been learning Korean, I recently found out that it is a language that was invented rather than evolving over time. It was created with the intention to be easy to learn. The entire alphabet is 24 characters, whereas Japanese has over 500 and Mandarin has a few thousand.

Each of the 24 characters follow very logical rules and build onto each other to build "blocks" of syllables. Each block must start with a consonant in the top-left, always followed by a vowel, and sometimes ends with a consonant. So the block always reads left-right, top-bottom and must always contain at least one consonant and vowel.

In addition, each syllable block has a phonetic sound. This means that it's really easy to read and pronounce, since there are no silent letters, with the one exception of single vowel syllable blocks. Which must start with a silent ㅇ(ng), for example the character ㅣ(i). So following the rule of a syllable block needing to start with a consonant you can't have a single ㅣ since it's a vowel, so you need to use ㅇ as a placeholder, thus creating ㅇㅣ(i).

Now if you want to create a word, like "child". You can put together the character ㅏ(a) and ㅣ(i). Since you can't have two vowels in the same block, we must use two blocks to create the word. This gives us ㅇㅏㅇㅣ (a-i).

The vowels consist entirely of horizontal and vertical lines, with a dash or double dash off to the left, right, top, or bottom. It's a very simple alphabet and an extremely interesting language. If anyone want's to learn more, feel free to checkout the Wiki page on Hangul for the full set of vowels, consonants, and double consonants. It's often said you can learn the Hangul alphabet in 90 minutes. If you want a solid intro course to Hangul, checkout this video https://www.youtube.com/watch?v=s5aobqyEaMQ

azepoi said 2 months ago:

The alphabet was created not the language itself. Hangul is indeed designed for the Korean language, a natural language.

mildmelon said 2 months ago:

You are correct, my mistake. Thank you for the clarification.

straumat said 2 months ago:

I'm learning about trading bots. It allows me to learn new things about software développement (réactive streams forum example), mathematics, machine learning and deep learning

I made it as a side project : https://github.com/cassandre-tech/cassandre-trading-bot

And i am writing a guide about what i learned : https://trading-bot.cassandre.tech/

sfmau said 2 months ago:

This is incredible - Thanks for sharing. Kudos for using the latest goodies provided in spring-boot.

I had an older version but wasn't using reactive. Definitely, this looks promising.

straumat said 2 months ago:

Thanks a lot for your message :) I'm glad you like it.

z023bs said 2 months ago:

was your bot profitable? have you done real trading with it yet?

straumat said 2 months ago:

Hello :) Well, my bot in fact allows you to build your own strategy quickly so my bot does not include strategy. I'm starting to build a strategy with my bot and ta4j... using kucoin sandbox right now. For the moment, still learning, not yet profitable :)

Advaith said 2 months ago:

this is interesting! thanks for sharing

straumat said 2 months ago:

My pleasure :)

baby said 2 months ago:

I'm writing a book at the moment[1], which means all my learning is focused on the table of content I made up a year ago.

But if I had time on my hand I would learn about:

* Adobe after effect not to only to edit videos but to animate!

* Illustrator, because it's the basis of any graphics

* Blender, because I want to learn about 3D graphics and this seems to be the reference

* Unity, a gaming engine, because I've always wanted to make a FPS game

* Phaser, an HTML5 gaming engine, because I want to make a multiplayer game with websockets. I'm thinking of starting with an online board game though.

[1]: https://www.manning.com/books/real-world-cryptography?a_aid=...

tmaly said 2 months ago:

learning Adobe After Effects, Premier, and Animate are on my list. I use to use Flash quite a bit back in 2002.

weavie said 2 months ago:

I'm really enjoying the book!

lostsoul8282 said 2 months ago:

I've been dividing my life into different parts - fitness, technology, wisdom, food and love.

Fitness, I cannot hit the gym anymore so at home I'm doing body weight training goals. Current goal is 1k squats a day(done), 1k burpees day(70/day right now, It's 1 week in so progress is very fast right now), and a bodyweight program my gym is offering.

For tech, I'm learning machine learning applied to a environmental program I'm trying to build which I'm passionate about.

Wisdom, this is subjective but I'm going back into old philosophy books. Just finished some work by Stoics and will read the plague by Albert Camus.

food, Every other day I'm trying to learn how to cook something new. I tried baking which is awesome, today I will try to make a chilli on a pot(never did that before).

Love, this is the hardest but also the easiest in theory. I'm trying to connect to the things that I love but because life got busy, I didn't connect to as much. This included just having conversations with friends, training my dog, loving how my body can do complex movements(squats/burpees), the beauty of technology, or just observing nature.

hattori said 2 months ago:

First of all congrats of mental fortitude to do 1k squats/burpees. That's quite insane. May I offer an opinion here - doing 1k body-weight squats is like doing 'hello world' 1000 times and trying to progress in programming :) Bigger ROI if you fill up a backpack with books and do 100 of them from strength, time (and probably endurance) perspective.

foob4r said 2 months ago:

Can you take a bit more about the environmental program and what you're doing with ML?

throw1234651234 said 2 months ago:

1k squats a day

How is that tendonitis?

StrauXX said 2 months ago:

Clojure! I played around with common lisp a bit a some months ago, though I basically used none of the lisp specific features like macros. After reading a few blog posts on functional programming and "the lisp way" I have decided to buy a book on Clojure. My end goal (for now) is to build a basic website with a backend.

gotts said 2 months ago:

Try out https://github.com/fulcrologic/fulcro-template full stack Clojure web app template powered by Fulcro.

iimblack said 2 months ago:

Fulcro is huge and might be a lot if you're just starting to learn Clojure too. IMO Luminus is a pretty nice option that lets you start simple and add more complicated pieces as you require.

heatmiser said 2 months ago:

what book are you working through?

msci100 said 2 months ago:

I'm writing a movie script.

It's a horror movie about a guy who renovates foreclosed houses for banks. But one of the houses he goes into has a ghost in it. He has to solve the mystery of why the ghost is there before he can leave.

I call it: "Repossessed"

Working tagline: "This is for closure."

bluetwo said 2 months ago:

Glad to see you taking on a creative outlet. Hope you are able to get it done before this is all lifted.

dorchadas said 2 months ago:

Right now, I'm learning math. I met a PhD via Discord who is giving me problems to work and checking my solutions. It's been quite fun so far, working on Real Analysis and Abstract Algebra.

I'm also doing baking; baked my first loaf of bread yesterday. Really interested to learn (and eat!) more.

I'm tempted to pick up a cheap instrument and learn one as well, or delve back into Python some more. Or drawing. My main issue is focusing now, sadly. Any tips there would be appreciated.

jaw said 2 months ago:

Focus has been an issue for me too. I think it helps to view yourself as having a limited number of focus 'slots', but to view each focus as just a medium-term commitment (a few months or years). So e.g. you're not choosing an instrument _instead_ of drawing, you're just choosing to learn the instrument _first_.

Setting specific goals for each month, which I track on Trello, has helped me a lot. It encourages me to make concrete progress and not tackle too many things at once, but reduces FOMO since I know I can always go a totally different direction the next month if I want.

(I blogged a little about focus: https://brokensandals.net/three-books-on-focus/)

justwalt said 2 months ago:

I have a similar problem. I do what interests me in the moment and I don’t make myself feel bad when I don’t make the progress I wanted on something else. I think I’m happiest that way.

behnamoh said 2 months ago:

I'm curious, how could someone find a PhD/researcher on Discord, esp. for this kind of purpose?

dorchadas said 2 months ago:

I found them on /r/math, actually, but they linked me to Discord.

behnamoh said 2 months ago:


hhsuey said 2 months ago:

My advice would be to define in multiple realms what you consider to be strongly focused, while both realizable and healthy in the long-term.

agentultra said 2 months ago:

I've been working through the Abstract Algebra course at Harvard: http://matterhorn.dce.harvard.edu/engage/ui/index.html#/1999... as well as Bartoz's Category Theory courses.

I've put that a temporary hold for the last couple of weeks to brush up on algorithms; I'm working through some select chapters of Concrete Mathematics, Programming in the 1990s, How to Solve It, and Algorithms. I find I'm not satisfactory at solving leetcode-style problems in what industry considers a sufficient amount of time so I'm working on improving my skills there.

And I'm making progress on my own side projects as well. I'm testing the waters with trying to record my work on video to see if streaming might be a thing I could do.

wasi0013 said 2 months ago:

Exploring Elixir & Phoenix. Solved some AOC & exercism problems with it, and wrote a BF compiler. So far, enjoying every bit of it. The language itself is beautiful! Codes are available on my Github[1] account :).

[1] https://github.com/wasi0013/

rufius said 2 months ago:

I’ve been doing the same in fact. I’ve always had a soft spot for Erlang (and now Elixir). I wrote a pretty large Erlang app back in college for a distributed system in a Biology research project.

I’ve been enjoying working with it - taking a little break but definitely enjoying Phoenix as well. It’s been refreshing to work through a “big” web framework that feels straightforward to reason about.

huntermeyer said 2 months ago:

Here's a great course from Udemy using Elixir and Phoenix: https://www.udemy.com/course/the-complete-elixir-and-phoenix...

AlchemistCamp said 2 months ago:

What inspired the BF compiler project?

wasi0013 said 2 months ago:

I thought it will be easy to implement and also a bit of nostalgia.

I was a 2nd/3rd semester CS student at that time when I saw BF code for the first time on a Competitive programming platform named SPOJ[0]. Later, I found it again on a code golfing website[1].

I thought it would be fun to learn as the language only had 8 commands! I learned it and wrote a tutorial[2] on my native language for my best friend so that we could have some fun together with it :D

[0] http://spoj.com/

[1] http://golf.shinh.org/

[2] https://github.com/wasi0013/Bangla-Brainfuck-tutorial/blob/m...

deathtrader666 said 2 months ago:

What is "AOC"?

atulatul said 2 months ago:

maybe adventofcode?

wasi0013 said 2 months ago:

Yes, I meant the Advent of Code.

c0deb0t said 2 months ago:

High school is out so I am learning SIMD instruction sets, like AVX2 and SSE, and using these to speed up Hamming/Levenshtein distance calculations in Rust. Preliminary testing shows a 20x speedup using vectorized SIMD operations! The end goal is a full Rust library for edit distance routines.

Sneak peek of the code: https://twitter.com/daniel_c0deb0t/status/124224838155819008...

uoaei said 2 months ago:

You could also consider providing bioinformatics routines such as global and local sequence alignment. Under the hood they're very similar algorithms.




c0deb0t said 2 months ago:

Though I probably won't implement the different weighting schemes, I currently have alignment traceback and searching (allow "free shifts" for the pattern string) features.

mattclase said 2 months ago:

Here's another recent SIMD aligner if you're interested:


c0deb0t said 2 months ago:

I took a look at the code, and read the paper. It seems that they directly calculate the entire 2D DP array, but use SIMD to allow each cell to contain multiple values, one for each query string. My approach uses anti-diagonals instead, but it is fast for one vs one comparisons, instead of handling multiple query strings.

Regardless, my goal was to learn some SIMD and Rust (first time for both), so I did not read many background papers.

mattclase said 2 months ago:

One thing to keep in mind is for SIMD memory locality is very important; a diagonal vector with a standard 2D DP grid is gonna lead to a lot of cache misses. Just something else to learn about.

c0deb0t said 2 months ago:

Since I am storing the entire DP matrix as diagonal vectors that are flattened, I don't think there will be many cache misses. Each diagonal only depends on its previous two diagonals, and each diagonal is stored contiguously in memory.

The problem with handling diagonals is that indexing cells and comparing characters on the diagonal becomes complex. Dealing with this without many branches (less branch mispredictions) is the hard part.

koeng said 2 months ago:

Prolog. I think that genetic logic can largely be expressed in Prolog to enable doing some crazy stuff that hasn’t been explored yet. It’s crazy to me that synthetic biology hasn’t really used logical programming yet for gene design.

Twisol said 2 months ago:

Logic programming is badly underapplied in general, I think. Most of the amazing work in this area never seems to have gotten far out of academia (if at all) -- Prolog being the almost singular exception.

Would be awesome to see some motivating examples for this application. It sounds really cool!

koeng said 2 months ago:

In synthetic biology, the application is super clear.

Let's say we want to make cocaine (or related compounds) in yeast (https://www.nature.com/articles/s41467-019-11588-w). Well, we know the biosynthetic pathway to get to that molecule (https://biocyc.org/META/new-image?type=PATHWAY&object=PWY-58...), and we know the biosynthetic pathways in yeast that intersect with that pathway.

In the tropane paper, they express 15 new genes and did 7 disruptions.

There should be a way to declare "I want this end product" and a system knowledgeable about the proteins associated with the reactions necessary to get there should be able to fit the puzzle of "ok, if you express these proteins you get that end product, and if you knock down these genes in the organism it should increase your production".

This generalized system should be applicable to nearly any biosynthetic pathway, and I think there is definitely a profitable niche at being good at that.

said 2 months ago:
codekilla said 2 months ago:

Yeah, checkout Maude--really woefully underutilized. Some fascinating things around pathway logic that are applied to biology: http://pl.csl.sri.com

koeng said 2 months ago:

That's amazing! I've never found that site before but I'm going to read some of their papers. Thank you for linking

codekilla said 2 months ago:

Maude fascinates me to no end. Currently I'm actually re-learning kdb+/q as I want to implement some things related to bioinformatics using it, but at some point I'd really like to do some things with logic/dependent types in biology. Happy to chat further grant <at> eonias dot org

koeng said 2 months ago:

Is there any reason why Maude is cooler than Prolog? Concurrency? Also - will email you!

vfinn said 2 months ago:

Could you shed some more light on this amazing work you're talking about?

Twisol said 2 months ago:

Sure. First, I'd recommend checking out the website of HN user 'triska at https://www.metalevel.at/prolog -- there's more to Prolog itself than most people are ever made aware of.

Frank Pfenning at CMU does some really cool research on concurrency using logical semantics and sequent calculi (https://www.cs.cmu.edu/~fp/). Session types might be the coolest thing out of this particular corner of the field, but there's so much more to explore here.

Going back some decades, concurrent constraint programming (CCP) takes the position that concurrent processes communicate by posting constraints upon a shared store. Vijay Saraswat's ask/tell CCP model has been a real inspiration to me. As best as I can tell, his work is based on forward reasoning, as opposed to Prof. Pfenning's work, which appears to use backwards reasoning (as does Prolog). (There's an interesting duality between the two kinds of reasoning, which I am not at all positioned to opine on.)

Some of the functional work I've seen on concurrency ends up going in a logical direction without realizing it; the more recent LVars papers (Lindsey Kuper and Ryan Newton) build up a lovely abstraction in Haskell that's conceptually the same as Saraswat's ask/tell logical framework, but they don't seem to realize it until several papers in. (It's all fantastic work! It's just a shame the communities have so little overlap.)

Logic programming allows you to model mutable state, and it gives you high-powered tools to reason about how that state changes over time. As a concrete example, you only need term unification and logical variables to get undirected communication channels in a logic program. Unifying a variable with a term in one part of the program allows other users of the variable to match on it and obtain information about that term. In this sense, it goes in the complete opposite direction from functional programming, which eschews state and treats it as something to be derived from a stateless foundation.

emmanueloga_ said 2 months ago:

Cool. This subject is on my list and will probably approach it through Clojure's Core.Logic (a logic library inspired by both prolog and miniKanren) [1]

1: https://github.com/clojure/core.logic

koeng said 2 months ago:

I've heard Datomic was made by Clojure people and is really good software too, though unfortunately proprietary.

jdminhbg said 2 months ago:

All of those things are true. If you want to check out Datalog-using DBs in Clojure that are open source, here are two alternatives:

* Datahike (similar to Datomic but similar): https://github.com/replikativ/datahike

* Crux (a bitemporal graph database): https://opencrux.com

gotts said 2 months ago:

Have you checked pldb/db-rel from core.logic?

emmanueloga_ said 2 months ago:

I haven't started checking the library yet... But I have it on my radar, since I'm already doing clojure I feel like it is an easy way to "add some prolog" to my programs :-)

biot said 2 months ago:

I’m fascinated by what this might look like. Have you written anything on this concept?

koeng said 2 months ago:

Not yet, I was in the middle of building a script to convert metacyc (https://metacyc.org/) to a Prolog database when COVID-19 hit - now I'm distracted figuring out the logistics of doing local production of diagnostic enzymes.

I've written something for the biotech crowd (to get DNA synthesis from FreeGenes), so it uses some odd vernacular and definitely isn't perfect for tech crowd - no actual code implementing it yet, but has some useful historical context of how this lands in with everything else.


tobmlt said 2 months ago:

Have you any thoughts on medikanren? I think they are generally _thinking_ as you do but in the short term that project is more about searching medical knowledge bases as opposed to logical programming of/with genes.

koeng said 2 months ago:

I can't find that much information about it online, but it looks great from a outside perspective! Wish they had a paper or something.

will_byrd said 2 months ago:

Me too. We'll write one soon. Right now we are hacking on mediKanren to do drug re-purposing for COVID-19.

I also work on miniKanren and am very interested in synthentic biology. We should talk! Please email me.


koeng said 2 months ago:

Will do Will! Small world.

thijsvandien said 2 months ago:

As a great opportunity to learn, volunteers behind SWI-Prolog will very soon organize another round of the online class they did back in 2018: https://twitter.com/SWI_Prolog/status/1246440776470536192

koeng said 2 months ago:

Thanks! Signed up.

melenaboija said 2 months ago:

Trying to improve some of my intuition in linear algebra, more specifically in matrix decomposition and SVD.


rassibassi said 2 months ago:

Had similar intentions half a year ago, it really clicked for me after watching the linear dynamical systems lecture by Boyd. How rank of a matrix, matrix norm and singular values relate was an eye opener. Thereafter it was easy to connect singular values and the stability/robustness of a system intuitively. Great teacher, I can only recommend :)


ruslanuchan said 2 months ago:

I've been into literature and philosophy for some time now. I'm following the "Masterpieces of World Literature" course [1] and have finished "Beyond Good and Evil" last month, currently reading Kierkegaard's Either/Or.

Aside from that, I'm also participating in Leetcode 30 days of code challenge [2]

[1] https://www.edx.org/course/masterpieces-of-world-literature [2] https://leetcode.com/explore/featured/card/30-day-leetcoding...

nequalstim said 2 months ago:

Same here :)

Just started reading

At the Existentialist Café: Freedom, Being, and Apricot Cocktails with Jean-Paul Sartre, Simone de Beauvoir, Albert Camus, Martin Heidegger, Maurice Merleau-Ponty and Others by Sarah Bakewell

It has a really nice narrative and tells the story of the aforementioned. Kierkegaard also makes some occurrences.

stdlin said 2 months ago:

if you tend to like that book I would highly recommended Walter Kaufman's Existentialism from Dostoevsky to Sartre and Goethe, Kant, and Hegel

david_w said 2 months ago:

Second this also. Also enjoyed Will To Power as a kind of well of "things well said, which make you think, " even if they're not strictly correct.

Bertrand Russell wrote a lot of very accessible Western philosophy overview or survey books which I found orienting:




the former is online here:


About this one he said :(paraphrasing from memory now), "A big book is a big evil. You may ask why then the author proposes to lay before you the present work..."

He's a hoot.

yboris said 2 months ago:

Whenever it comes to philosophy, I always recommend Peter Singer -- just about anything by him is great. Consider Practical Ethics [1], or the recently-released-free The Life You Can Save 10th anniversary edition [2]

[1] https://www.amazon.com/Practical-Ethics-Peter-Singer/dp/0521...

[2] https://www.thelifeyoucansave.org/the-book/

HanQi said 2 months ago:

I am taking this course[1]: Programming Languages. It emphasizes on big ideas behind languages and functional programming which is very interesting and enlightening.You will implement a type checker and interpreter through this course(I am struggling ML's pattern matching now but feel quite pleasant ).


Monkoton1 said 2 months ago:

I took this course with Dan at UW. It was definitely one of my favorite classes. The way he taught made things really interesting.

johndoe42377 said 2 months ago:

One of the best courses ever.

guhsnamih said 2 months ago:

Yes, the only course I ever finished and finished wiser of the scores I must have enrolled in so far.

ElFitz said 2 months ago:

Model Thinking, from coursera. A funny coincidence; last week I reached the... SIS epidemiology model! Rarely so relevant.

It's quite interesting. Two of the things that fascinated me most so far are emergent properties (such as in cellular automata models), and what he calls the models' "fertility".

As an example, with a few adjustments (ie the "recovery rate" becomes a "churn rate", etc) the SIS model could be adapted in marketing, viral or not, to measure an existing campaign's efficiency, or try to predict the means a future one might require based on different assumptions and goals.

Also acted as a nice statistics 101 refresher / intro

sonabinu said 2 months ago:

I'm reading the 'Model Thinker'. That's a great course.

ch33zer said 2 months ago:

Quantum Computing for the Very Curious: https://quantum.country/qcvc

Wonderful into to the topic and easy to understand. It's my first foray into the field so I really appreciate the Author's writing style.

luis8 said 2 months ago:

This is awesome! thank you for sharing it. I was looking for something like this.

jozi9 said 2 months ago:

Decided to reverse my long-time TODO list and start from the bottom because I realised I'd never get there otherwise. It feels so good so I advise everyone to go and do the same.

For me it looks like this, I'm working on a bootstrapped simple SaaS tool for devops (docker container monitoring):

- Clojure so I'm learning FP and Lisp

- Clojurescript/Reagent so I'm learning SPA/react

- MongoDB so I'm learning NoSQL

- Vim so I'm learning editing like a boss

- SaaS so I'm learning marketing (SEO/Blogging to start with)

sunsetSamurai said 2 months ago:

I'm studying DS and Algorithms, I am a self taught developer and I'm trying to fill some gaps in my general CS knowledge.

There's a project I want to work on but I feel a bit overwhelmed and don't know where I should start, I'd appreciate some advice here.

I want to create shogi(Japanese chess) server, similar to lichess, the thing is that I've never done anything similar to this, I've been reading about web sockets, this seems like a good place to start. I plan to use elixir for the backend, is this a good choice? Lichess uses scala, should I use this instead?

blihp said 2 months ago:

My advice would be don't bite off so much at once where you'll risk getting discouraged. Part of the reason you may be feeling overwhelmed is that it sounds like you're combining three projects: learning a new programming language, learning network programming, and writing an application server in a new (to you) domain. Any one of them is potentially enough to keep you quite busy.

Why not instead start with a language you already know, and figure out how you'd sketch out a standalone game engine (forget about networking for now) in that. Then once you think you've got the basic game engine (architecture, at least) down, then tackle turning it into a network server (again, still using a language you already know.) Finally, port the thing over to a language you want to learn (Elixir/Scala/whatever) and you'll have an implementation you understand well to compare it against. Of course you can rearrange the sequence... but that's the basic idea.

sunsetSamurai said 2 months ago:

I think you're definitely right, I'll try to give it a try using javascript, and learn the basics of network server along the way. The reason I wanna do it in elixir is that I wanna learn another language, right now javascript is the only one I can say that I know kind of well, all my side projects are in js, so I guess I'm a bit bored of it.

paladin314159 said 2 months ago:

I built kfchess.com (https://github.com/paladin8/kfchess), which might be a helpful reference. It's by no means amazing code (I hacked it together quickly in my spare time), but it uses https://github.com/socketio/socket.io for real-time client-server communication. It's a relatively simple library to build on top of.

As for the backend, I would recommend whatever you're most familiar with. It doesn't make that much of a difference and you'll be way more productive in a language you know.

Love the idea of a Shogi site by the way!

sunsetSamurai said 2 months ago:

Your project looks really cool, I'll take a look at your repo, I'm sure I can learn a lot from it.

I am gladd you like my idea, there's a few good platforms to play shogi already, like 81dojo on the web and shogiwars on mobile, but none of them are open source. So I wanna do an open source version similar to lichess.

bigbassroller said 2 months ago:

I think Elixir would be an excellent choice. Once you have a sip, you’ll never want to go back. Might I recommend this book: https://pragprog.com/book/lhelph/functional-web-development-... there might be some overlap with your Shogi game idea to get you started.

sunsetSamurai said 2 months ago:

Thank you for the book, I'll take a look at it.

ing33k said 2 months ago:

Elixir / Phoenix is indeed very good in handling websockets. Probably that's the easy part in your project.

evsamsonov said 2 months ago:

I guess Elixir is a good choice. Just can advise a couple of good video courses in addition to books. 1. https://pragmaticstudio.com/unpacked-multi-player-bingo-with.... 2. https://codestool.coding-gnome.com/courses/elixir-for-progra.... In [2] Dave Thomas, author of a Programming Elixir book, goes through creation of online game too.

EnderMB said 2 months ago:

I'll probably get a lot of shit for this, but LeetCode.

I've recently been furloughed, and I think that redundancies aren't too far away. There aren't many companies hiring in my area at the moment, and if I'm going to move it's going to be for a big company, so I'm dusting off the CV and am applying to some Big N companies.

A recruiter recently reached out to me, and I've got an interview with one Big N company coming up soon, so am using my new-found free time to study and, at the very least, be a bit more employable at the end of this pandemic.

typon said 2 months ago:

I don't hate you I pity you. Applied for Big N jobs last year, had to study leetcode for 1 month and I hated my life. I was legit depressed. I was already so busy at work and coming home to do leetcode just killed all motivation and happiness in my life. Did well enough to get to on site interviews but didn't get a full time offer from any of them. Such is life :(

dominotw said 2 months ago:

I used to hate leetcode with passion because i associated it with being a failure in career.

I started leetcoding just for enjoyment and not for landing a FAANG job, when i had no interviews coming up. I started enjoying it a little bit and now i do it for "fun" and don't have an anatagonist realationship to it.

Like someone said, once you overcome something you have keep overcoming it, so you can never be successful if your strategy is overcoming.

fossuser said 2 months ago:

It feels like studying for the SAT for me (something I also struggled really investing in). At least it’s more valuable than the SAT in the skills you develop.

It can be really hard to motivate yourself to jump through hoops.

scarface74 said 2 months ago:

I use to hate the idea of studying leetCode and I still refuse to do it. But then I realized how hypocritical I was being considering all of the time I’ve spent “grinding architecture and infrastructure”, reading white papers and studying videos on TOGAF so I could talk the talk on an “Enterprise Architect” or a “Digital Transformation Consultant”. But if I have to play a game to get the next salary upgrade after I top out as an IC in my local market (not the West Coast), that’s what I had to do. Who knows? I might end up working in consulting at AWS or Azure.

But now, with the entire world economy screwed up, I don’t think now is the right time to make that kind of move. I’ll stick with being just a regular old Enterprise Developer/Architect/Team Lead/Single Responsible Individual depending on how the wind blows focusing on healthcare.

crimsonalucard said 2 months ago:

Architecture is way easier than algorithms. I'm actually the opposite. I hate the idea that people are studying intensely for architecture because it just takes reading the wikipedia summary to get the main point.

Architects are usually just managers who are ex-engineers and have been out of the front lines for so long that they aren't technical enough to get back into coding. This is fine, but the idea that "architecture" is some kind of talent is absurd. Anyone can study a blog article about the latest architecture buzzword and understand the concepts front to back. Not to mention that the more physical nature of architecture makes it less flexible than code itself so "architectural" patterns are, as a result, significantly less abstract and complex than coding patterns/algorithms.

The true difference in ability is measured by who can actually Build an architecture, and usually its developers who build it, while architects (mostly) just talk about it.

scarface74 said 2 months ago:

Not to mention that the more physical nature of architecture makes it less flexible than code itself so "architectural" patterns are, as a result, significantly less abstract and complex than coding patterns/algorithms.

This is the reason that software engineers need adult supervision. The fact that you think that modern infrastructure is physical and static displays a lack of experience. There is nothing static about modern cloud infrastructure.

I just had to deploy an API to ECS/Fargate (Docker). We had to determine the best combination of memory/cpu of the Fargate runtime environment and what hardware we wanted to give the ElasticSearch environment. I basically wrote a CloudFormation template (infrastructure as code) that defined the environment and then wrote a Node script that ran the CF template and passed in parameters to vary the hardware environment (cpu/memory). After the environment was created, the script then ran a series of Artillery load tests, recorded the results of the load tests, gathered metrics from CloudWatch and estimated the monthly cost compared to the performance.

We reported that to management to let them decide how much they were willing to spend for the throughout they needed.

I’ve created entire environments with databases, Redis Caches, ECS clusters (think AWS version of EKS), etc as a proof of concept by using CloudFormation deploying code to it, showing management as a demo, and then tearing it all down just by clicking delete until we can come back to it after the contract is signed and then spin it back up with one command.

crimsonalucard said 2 months ago:

>This is the reason that software engineers need adult supervision. The fact that you think that modern infrastructure is physical and static displays a lack of experience. There is nothing static about modern cloud infrastructure.

Note how I said "more physical nature," meaning that it's closer to physical but not completely physical. Either way, all abstractions suffer from leakage from the physical world. Data and processes, while seemingly abstract all occupy physical and temporal space and this fact leaks to all layers of the stack. Thus, technically, everything in the universe including computation is physical and nothing is ever purely a virtual entity.

Honestly, you think I don't know about docker? You think I don't know about the cloud? "Infrastructure as code" oooh buzzwords, you're just using a shittier domain specific language to write something that you can also do with Regular code (such as python, no buzzwords needed).

Give me a break, what web developer doesn't know about the above stuff? None.

>I just had to deploy an API to ECS/Fargate (Docker). We had to determine the best combination of memory/cpu of the Fargate runtime environment and what hardware we wanted to give the ElasticSearch environment. I basically wrote a CloudFormation template (infrastructure as code) that defined the environment and then wrote a Node script that ran the CF template and passed in parameters...................

OK, the stuff you did isn't even usually what a "architect" does. It's devops. An architect just diagrams the boxes and lines and gives it to the devops guy to spit out working infrastructure or a POC. But that's besides the point...

Can you write your own programming language? Can you write your own database? Can you write your own Operating System? These are actual specialties (none of which involve "architecture"), not some garbage made up specialty like "architect." At the very least, if you want to be part of an actual specialty in the IT world you need to build shit and that shit needs to be HARD to build, you can't just do some easy diagraming of a bunch of stuff while acting like you have some superior understanding of the latest architecture pattern you can look up on wikipedia.

said 2 months ago:
vp8989 said 2 months ago:

>Honestly, you think I don't know about docker? You think I don't know about the cloud? "Infrastructure as code" oooh buzzwords, you're just using a shittier domain specific language to write something that you can also do with Regular code (such as python, no buzzwords needed).


idoby said 2 months ago:

Well, using general Turing-complete code languages for infra and config vs specialized templates/languages is a legit point of contention in the industry right now, although judging by the style, GP isn't considering the pros and cons of each approach, which include:

* Forcing users to learn a specialized language vs reusing knowledge of a general purpose language

* Inevitable Turing-completeness creep and increasing complexity in specialized languages

* Complexity and difficulty of reasoning about general purpose code (and analyzability)

So GP does have a point. He/she is just not making it very well, I think.

crimsonalucard said 2 months ago:

The tradeoffs you mention are obvious right? I'm just sort of downplaying the huge bragging Scarface was doing when he mentioned he did some cloud formation and "infrastructure as code" because it's really not that impressive.

It's obvious that the logical consequence of using Turing complete languages for devops introduce a lot of complexity into infrastructure and can introduce configuration that executes continuously as well. Bugs that only existed in the application layer now creep into infrastructure. Infinite recursion can now be spinning up infinite instances.

That being said the devops thing was a side detail and that's besides the point. The point is that the role 'software architect' is useless.

idoby said 2 months ago:

Obvious? No, and even less straightforward. Personally I think it's a good thing both kinds of tools exist, because each dev/team/project has different needs and different sensibilities.

Personally, I prefer my configuration to be written in a plain-old language (e.g. Python) instead of a specialized config language (be it YAML or JSON based or whatever). I can test that code, I can reason about it, I can review it for bad stuff like infinite loops (not perfectly, but still), I know how it behaves when diffed and merged, etc.

Regarding software architects: I've seen a few companies where architects are hands-off demigods who prescribe complete architectures without ever having to contend with the results of their decisions. Those companies are, in my experience, few, and tend not to do well.

In a lot of other companies, the role of an architect is very similar to what Herr Scarface describes - individuals with a lot of experience who can make broad decisions based on both experience and data, and leave it to lower ranking engineers to work out the exact details. They do the hard/open-ended stuff and come to conclusions about the broad strokes (e.g. "yeah Redis will work well for this problem, but since you have denormalized data you might need a background process to restore consistency"). This is often called "scoping" and it is the main responsibility and impact of higher-ranking engineers (whether they're called "architects" or not, I personally dislike the term).

crimsonalucard said 2 months ago:

>In a lot of other companies, the role of an architect is very similar to what Herr Scarface describes - individuals with a lot of experience who can make broad decisions based on both experience and data, and leave it to lower ranking engineers to work out the exact details. They do the hard/open-ended stuff and come to conclusions about the broad strokes (e.g. "yeah Redis will work well for this problem, but since you have denormalized data you might need a background process to restore consistency"). This is often called "scoping" and it is the main responsibility and impact of higher-ranking engineers (whether they're called "architects" or not, I personally dislike the term).

It seems like these people are capable but most actually are not. The reason is because they spent too much time in this role so they lose the skills of actually being a software engineer and gain the skills of bullshitting about architecture. So when you "interview" or talk to these people it really sounds like they know they're shit when they don't. The reason is, it's basically their job to talk about technology so they become really good at it, and if an interview doesn't involve a technical coding part, then they'll ace those interviews with flying colors.

If you get down to the nitty gritty and literally ask these guys to perform some very easy coding problem or actually implement a product you will tend to see a very high amount of incompetence.

I work at a startup where we accidentally hired one of these architects. The guy bullshitted his way to the top but we're having a hard time giving him a ticket where he works on the actual product. He's politically maneuvering his way around to only work on proof of concepts and holding irrelevant meetings to talk about architecture. Even roped the CTO in to support his case, which completely pissed off the entire team. Startups need people who can get the job done, not someone who can create a little bullshit bubble so that he can keep his bullshit salary.

This is very similar to someone who's been a CTO for many years. If you don't program, if you don't actually build architecture, you lose your technical skills but you gain bullshitting and management skills. This isn't actually completely bad as a companies need leadership and managers and sans the bullshitting part, leadership is a great skill.

It is completely wrong to assume that "Architecture" is some sort of skillset and that an "Architect" is more technically capable (due to the hire rank) than a typical engineer. Give them the title they deserve, and that is: Ex-engineer/manager.

>Obvious? No, and even less straightforward. Personally I think it's a good thing both kinds of tools exist, because each dev/team/project has different needs and different sensibilities.

It's obvious to me the difference between configuration files and turing complete programs or even python. You can extrapolate the benefits of using python or a configuration file. Have you hit an infinite loop error using python to instantiate instances? Maybe once or maybe zero times, but you can still use your brain to extrapolate that this is a potential problem even when you've hit this problem Zero times.

On a side note, you can also extrapolate that JSON and YAML can be turing complete. It depends on how something interprets it. For example:

   {"fib": {
      "PARAMS": {"y": "float"},
      "BASECASE": [["X", "==", 0 ], [1]]
                      "FUNCTION": "fib",
                      "PARAMS": [["y", "-", 1 ]]
         }}, "+", {"EXECUTE_FUNCTION": {
                      "FUNCTION": "fib",
                      "PARAMS": [["y", "-", 2 ]]
    "main": {"EXECUTE_FUNCTION": {
                      "FUNCTION": "fib",
                      "PARAMS": [["y", "-", 1 ]]
Awkward yes, but I'm just showing you a way where it can be possible in my garbage/made-up JSON above. Which you can extrapolate from that there probably is a much more elegant way of doing it. All you really need are two features: branching and self-reference. JSON or YAML does not actually preclude something to be not turing complete.

>Personally, I prefer my configuration to be written in a plain-old language (e.g. Python) instead of a specialized config language (be it YAML or JSON based or whatever). I can test that code, I can reason about it, I can review it for bad stuff like infinite loops (not perfectly, but still), I know how it behaves when diffed and merged, etc.

Yeah, I'm kind of in agreement with you here as a personal preference.

scarface74 said 2 months ago:

While I agree the pendulum goes both ways - for instance a AWS’s CDK builds templates using your language of choice. How can someone know the tradeoffs without a breadth of experience who thinks they can learn everything they need to know from Wikipedia? “There is no compression algorithm for experience.”

crimsonalucard said 2 months ago:

You don't even know how much experience I have. I'm saying architecture patterns can be learned from Wikipedia not 'everything'.

A devops configuration language (outside the domain of architecture) is not included in this category. Please don't be manipulative and please do not lie.

crimsonalucard said 2 months ago:

Let's stay on topic rather than make passive aggressive comments on my intelligence.

You're implying that my comments are stupid and arrogant. Prove it if you can, let's get to the bottom of whether or not "architects" is a worthless specialty or not. I think you know I'm right and the only thing you have left are personal comments on my intelligence.

scarface74 said 2 months ago:

Honestly, I also had a long reply but I thought why bother? You haven’t gotten past the first step to knowing what you don’t know.

We all thought we were the smartest people in the room at one point, you’ll grow out of it too one day.

crimsonalucard said 2 months ago:

>We all thought we were the smartest people in the room at one point, you’ll grow out of it too one day.

Again with the insults.

Why bother? Because you can learn and I can learn. I don't come here to trade insults. I come here to lay down the actual reality of what I see unimpeded by social norms. Yeah I'm sure I touched nerve here, but it's nothing personal, the internet allows me to talk about truths that are uncomfortable and forces me to face those truths as well.

I've been proven wrong tons of times on HN, so I'm hoping that if you disagree, you can prove me wrong and I can learn something and I'll return the favor in turn if you're the one that's actually wrong.

I find that this isn't the case with most people, they don't want to face reality. The fact that you turn to personal insults and have this whole "why bother" attitude seems to me as a cover. You don't bother because you got absolutely Nothing to offer.

scarface74 said 2 months ago:

It isn’t intended to be an insult. This thread is veering way off topic but if you think you can learn everything that you need to know by reading a few blog posts and Wikipedia articles, what’s the point? Why ask on HN if as you say everything you need to know you can find from a few blog posts?

As software engineers, we tend to be told especially when we are young that we are all “smart people” (tm). We start to internalize it (believe our own bullshit). But the longer your career is, you realize that the world is full of “smart people” and that your coworkers also came up thinking they were the smartest people in the room.

crimsonalucard said 2 months ago:

It's an insult drenched in the social politics that are an intrinsic part of our corporate politics. Some positions are useless and ultimately require more politics to stay relevant. Architecture is such a position and you seem to be good at politics.

You don't even know how old I am, you don't even know what level of intelligence I consider myself to be. Yet you make a bunch of baseless comments hinting at my personal character. That is the extent of what you're trying to convey, an insult through and through yet subtle on many levels. Politics, the only essential skill needed to become an architect.

When did I say you can learn everything you need to know by reading some blog posts or Wikipedia? I never said this. I only said that you can do this for 'architecture' and that's why the job role 'software architect' is complete bullshit.

Now let's get back on topic. You disagree with me. You think architects know something about 'architecture' that is beyond Wikipedia and blog posts. Prove it. You think they have some ability that sets them apart from normal engineers. Tell me what that is and why there exists articles like this:


I don't want to see another irrelevant comment because that just tells me that you got absolutely nothing left. Prove the worth of a software architect.

cle said 2 months ago:

Where I work, architects are responsible for disambiguating requirements and breaking down the implementation across teams into achievable milestones. It’s the intersection of technical chops and social skills. One of those is a lot easier to develop than the other.

A good architect makes it seem like their job is easy, but there’s nothing easy about taking a vague idea and leading a huge cross-team effort to solve it.

crimsonalucard said 2 months ago:

>Where I work, architects are responsible for disambiguating requirements and breaking down the implementation across teams into achievable milestones. It’s the intersection of technical chops and social skills. One of those is a lot easier to develop than the other.

Good thing we're on the internet where we can talk about the actual reality and lay everything out as it is without worrying about the social and political bureaucracy that infests corporate culture.

That being said, isn't what you described the role of the tech lead or manager? The best tech lead ultimately derives technical architecture by aggregating the expertise of the team and puts that plan into motion exactly as you said.

The term "architect" usually implies greater knowledge of "architecture" where the "architect" uses this "greater knowledge" to lay down a high level plan of the infrastructure. Additionally your initial post implied that this is what you think, because this is what you study for interviews.

Like I said, usually the architecture role is actually ends up in practice becoming an ex-engineer manager. That's the only actual role they can fit while maintaining the respect of the engineers and without being completely useless. This is basically what you described about yourself.

scarface74 said 2 months ago:

Additionally your initial post implied that this is what you think, because this is what you study for interviews.

Thousands of people study about how to reverse a binary tree on a whiteboard and other needless leetCode to “work at a FAANG” even though they don’t do that everyday.

What you study for an interview is unfortunately often only vaguely correlated with what you do on a job.

crimsonalucard said 2 months ago:

>What you study for an interview is unfortunately often only vaguely correlated with what you do on a job.

Agreed 100%. Interviewing is hard. I would argue though that interviewing for "architecture" causes another issue. To give an analogy... it's like studying english for a programming job because english is used all the time on the job.

Architecture is just too easy and too obvious and if you just happen to not know a specific architecture or way of speeding something up, all you have to do is read about it on the internet like looking up vocabulary on a dictionary.

I would also argue that google isn't exactly just testing algorithmic skills in an interview. The spiritual goal of the interview is that the question they give you is novel and one you haven't seen before. The overall purpose of novel questions is to measure your raw intelligence.

The question isn't whether or not you know how to reverse a binary tree but whether or not from a state of not knowing how to do it, can you creatively come up with a way to do it in an hour? Raw IQ.

Of course the practice doesn't always match up with the ideal and often times interviewees can get lucky.

I'm not saying that this is the best way to interview. I'm saying that judging an interview based off of architecture is even worse. It's even easier and there's a lot of room for bullshit in a conversational interview as opposed to a technical question.

scarface74 said 2 months ago:

Pro tip: anytime you think something is easy, be concerned. You haven’t learned it at the depth that you think you have. Keep living....

crimsonalucard said 2 months ago:

Pro tip: this applies to you to buddy, you don't even know my background so you don't even know which field I have a PhD in or how much older I am than you.

Der_Einzige said 2 months ago:

Don't listen to the downvoters. You're telling people the cold hard truth that they don't want to hear.

grumpy8 said 2 months ago:

don't need to do leetCode just for the salary game, there are some really fun algorithms

scarface74 said 2 months ago:

After programming in assembly for hobby for six years in middle and high school, 4 years in college, and professionally for almost 25, nothing about software development is “fun”. It’s just a way for money to appear in my bank account. Don’t get me wrong, I don’t dislike software development, but every hour of continuous learning I do is a combination of keeping me competitive at my current level or to make more money depending on where I am in life.

gameswithgo said 2 months ago:

it can be a fun game, and it is a useful game. brushing up on fundamentals is useful in any human endeavor no matter how advanced you get.

senderista said 2 months ago:

I hate to say it, but I got no discernible advantage from my non-trivial coding projects during my last job search. My time would have been far better spent just grinding leetcode, from a purely economic perspective. I wouldn’t have had nearly as much fun, but I probably would have gotten more offers.

returningfory said 2 months ago:

100% percent my experience too. In the last 3 months I've been on-site at 3 of the FAANG companies. Not a single interviewer brought up the large personal projects I've done and which are given decent space on my resume; my weeks of leetcoding was definitely far far far more beneficial for getting a job.

shitoujizu said 2 months ago:

sometimes feels very sad about this since one's value should be reflected by the awesome projects he has done. I think it's just laziness of the FAANG companies. If the interviewer is well prepared and keeps digging the resume, then he should know the candidate is good or not. But by leetcoding, it's simpler for them, just keep asking the repeated questions.

glouwbug said 2 months ago:

From my personal experience, a company wants a "yes man", someone who will do as they command. From their perspective, if you can't pass (or refuse!) the coding challenge, you're already in the red flag zone. That's just how it is.

The funny thing is that a single fairly large personal project will develop your engineering skills 42 times that of the hundred something leetcode problems you solved for your FAANG interviews.

One teaches deep long term critical thinking. The other short term critical thinking. You won't see any small short sighted systems out in the real world.

arvinsim said 2 months ago:

I understand why FAANG does it. The problem is that other companies are just cargo culting.

DeathArrow said 2 months ago:

I think that if your hobby projects will be important for many people: i.e. you develop something with the importance npm, or Ruby on Rails, or Vue.js, FAANG companies will make you offers without asking you leetcode kind of questions.

shitoujizu said 2 months ago:

This is not true. Not so many people can set up popular and awesome projects like npm or vue.js. These are top level programers. But for other people you can not say they are not good enough to be qualified.

cheese4242 said 2 months ago:

I read that the guy who invented Homebrew still had to go through the leetcode interview at Google (which they failed) so I'm not sure if they ever waive the interview requirements?

DeathArrow said 2 months ago:

Somehow I don't imagine Ken Thompson willing to answer leetcode questions. If anything, he should be the one doing the asking.

dominotw said 2 months ago:

they look at your resume in any seriousness after you pass leetcode rounds,

CalRobert said 2 months ago:

Can't imagine getting shit for studying up on what's likely to help you get a job. I'd be doing the same if I were in your situation (though if laid off I'm hoping to start my own thing).

__s said 2 months ago:

> I'll probably get a lot of shit for this, but LeetCode.

Don't hate the player; hate the game. gl

gcheong said 2 months ago:

I can't hate you for doing what you need to do to get another job, I hate that this it what interviewing has come to and the companies capitalizing off it.

amznthrowaway5 said 2 months ago:

"I hate that this it what interviewing has come to and the companies capitalizing off it."

I for one am extremely grateful, although I think it would be even more fair if it was more like the SAT. Traditional interviews depend too much on status signaling and social connections.

christiansakai said 2 months ago:

After 2 years of Leetcoding and jumping ships, I finally got a job in one of the big companies. Worth it.

brandmeyer said 2 months ago:

Back when I was preparing to apply to a FAANG, I built a game engine as my vehicle for practice. From scratch. Well almost from scratch, if you consider bare nekkid OpenGL to still be "from scratch".

There's tons of opportunities in a game engine for exercising and honing your performance chops and your algorithm chops. It also gave me an opportunity to learn a new language and programming model - the GL shader language. Building it onto a game helps to keep it real.

Best of luck.

ronyfadel said 2 months ago:

I’m not too sure about algorithms?

You can get away with making a working, performant (basic) engine with some neat functionality nowadays without delving too deep into algorithms or using any advanced data structures.

It is a good exercise in “real coding” though.

brandmeyer said 2 months ago:

Off the top of my head, there's pathfinding on a navigation mesh, mouse hit-testing and FOV pruning with a space partitioning tree, triangle mesh sorting. You can also do some agent work by building up an automated opponent.

why-el said 2 months ago:

No sane person will hate on your studying, you are doing what you gotta do to survive, good luck out there friend.

said 2 months ago:
mrslave said 2 months ago:

On LeetCode, how would you estimate the split between slogging-enldlessly-at-things-I-already-know and I-actually-learned-something?

I had never heard of it until I read the thread under your comment so I apologize if this is obvious to people in the know. From the comments it sounds like more of the former and less of the latter.

I had a good experience with Project Euler back in the day (account long since lost). There was absolutely no focus on immediate employability but there were improvements in my "human capital".

brudgers said 2 months ago:

Leetcode problems can be solved by extrapolation from FizzBuzz programming. They can also be solved by engineering insight of algorithms and data structures that are applicable to processes that don’t fit in RAM. That’s what makes Leetcode plausibly useful for evaluating candidates. Bad engineering will get correct output and good engineering is possible. Neither requires significantly more effort writing code.

DeathArrow said 2 months ago:

I did some Leetcode type stuff in high school to prepare for CS contests and at University for some CS courses.

I think they are ok if you like that kind of stuff and like to find solutions to those kind of problems. And if you have time.

Most people who hate them are grinding leetcode kind of stuff in limited time, taking away from sleep, time with family, time for rest.

If something starts feeling like a chore, maybe you are doing it the wrong way or at the wrong time.

Also, from being employable point of view, I think there are more valuable skills. I.e. if you want to work as a web developer, know a framework by heart, master a web programming language, know SQL, know HTML, CSS and JS, know some useful patterns, know about testing, SOLID, DDD, TDD, know how to use tools like GIT, JIRA, Jenkins, Docker, know REST/SOAP/gRPC, know async and parallel programming. Those were the kind of technical questions I was asked about 3 months ago when I went through 20+ job interviews. From all those only one asked a leetcode kind of question. It wasn't hard and it didn't seem like it was a make it or break it kind of question. Many years ago, when I applied for game development jobs, I was asked about Unity, C#, GPU shaders and a bit of algebra and geometry, no question was leetcode like.

harshs08 said 2 months ago:

I would be doing the same thing if I was in your situation. Even though LeetCode is a grind, there's no way around it if you are targeting big companies.

Good Luck!

said 2 months ago:
non-entity said 2 months ago:

I guess its something I'll get good at if I practice it more, but at I cant even really do leetcode easy right node despite having been a professional developer for a few years and a hobbyist for long before that. I have no C.S. background though.

Most of the times when I end up seeing the solution ot makes sense, but uses data structures in ways I wouldn't think. Part of the reason for that I think is because my daily work for one operates on much different types of data (business entities vs arbitrary collections of integers) and also because the logic in the applications I work on is not very algorithm heavy.

Another reason is because of high level abstractions I've been spoiled by. I could probably hack many of the problems together with LINQ but that's not gonna hold up very well.

ddoolin said 2 months ago:

I'm also doing a data structures and algorithms course, likely followed by what will be HackerRank and LeetCode. I really don't like it but what can you do?

kbrisso said 2 months ago:

Good luck! I'm doing the same thing, I actually enjoy some of it, I've learned a few things too.

droithomme said 2 months ago:

Never heard of LeetCode. Is it one of these fad languages? What companies are looking to hire people who are exprets with 10 years experience with this language?

droithomme said 2 months ago:

Oooh! Downvotes instead of answers. That is extremely helpful, thanks. So all the posts here about this BS are shills working for some marketing company pushing their shit. It's not anything real since today is the first time it's been mentioned here. Typical marketing Yale imbecile tactic is use robot army downvotes to make people who ask WTF is this seem like they are out of the loop. Reality is LeetCode is absolutely nothing and anyone associating themselves with this label is either a shill or an imbecile. Thanks! Very helpful. Flag away since truth is shit and propaganda is everything on ycombinator.

Infinitesimus said 2 months ago:

Your comment will likely get killed so let me throw you a life-line

1. It's likely you're getting downvotes because it's an easily google-able question: https://leetcode.com/

2. " It's not anything real since today is the first time it's been mentioned here". easily proven to be untrue: https://www.google.com/search?client=firefox-b-1-d&q=site%3A...

3. You immediately responded to the downvotes with anger and insults, ensuring that no one will bother to engage. You're probably having a bad day but don't forget other people also are having shitty days and no one is helped by your behavior.

3. You've been here for long enough to know the rules. Keep things civil and assume positive intent wherever possible.

Hope your day gets better ( call a friend, hotline, play a game, draw, whatever it is that you use as a healthy form of therapy)

droithomme said 2 months ago:

So a bunch of nonsense and no legit response. Neat. Thanks a bunch he responded sarcastically while rolling his eyes. No one has heard of your pet project.

battery_cowboy said 2 months ago:

Dude, a Google search would have eliminated the need for you to have a fit, you're not even close to correct, look it up.

ninjakeyboard said 2 months ago:

I'm sure you're suffering in your world over there and I hope you're okay.

droithomme said 2 months ago:

I'm doing great. I have a garden growing in size each day. I am taking a quinine derivative. I bought plenty of toilet paper and supplies starting back in late January. I posted about doing regressions on early factual and reliable Chinese data and was downvoted and rebuked by ignorant racist anti-asian people who are now holed up and desperate and lashing out. My chances of survival or not are not quite as bad as most others following the globalist stock scam cult.

I tried to get the word out using scientific and factual information, to save lives. Alas this is useless to the HN crowd. I even got flagged for saying weeks ago that all science shows that MASKS WORK. This statement of absolute scientific fact is anathema to the cultist thinking of HN fanatacists and cultists and their priest defenders like dang who will be responsible for the deaths of millions and is already responsible for the deaths of tens of thousands. Hey thanks guys. Hope this is satisfying to you to cause all this mass death by promoting ignorance.

tuckerpo said 2 months ago:

You're receiving downvotes instead of an answer because you're coming off as a smug prick.

droithomme said 2 months ago:

Right so no legit response. Maybe you're the smug obscenity? Just a thought.

lobo_tuerto said 2 months ago:

Elixir and Phoenix!

It's been a long time coming, but finally doing it now.

After coming to grips with functional programming concepts (introductory in Ruby, more advanced in JavaScript) I decided to explore Elixir and what I found really surprised me in the right way.

So I've decided to dedicate myself to become very fluent in it.

AlchemistCamp said 2 months ago:


If I may self-promote a tiny bit, I've made over 100 free Elixir screencasts on YT over the past couple years, with over 98% upvotes. Helping people in your situation was why I started the channel:


huntermeyer said 2 months ago:
kilroy123 said 2 months ago:

I've been learning a lot about options trading. (Yes, I understand the risks, being margin called, and losing all my money.) To me, it's just a fun and interesting hobby.

I've also been reading and learning a lot about dirivities and the overall US financial system. It's pretty wild how things _actually_ work behind the scenes. So much "wealth" has been created coming up with such schemes. The more I learn, the more I worry about us being in some serious uncharted waters, and I think maybe it's all too complicated.

lucky518 said 2 months ago:

Would it be okay sharing how you are approaching options trading? What steps would you recommend someone who would like to start with the basics?

peterlk said 2 months ago:

The two ways I got started were:

1) open a Robinhood account with a small amount of money ($100) ought to be enough. Buy in and out of stocks every day for a couple days until you can get approved for their level 2 trading. Then, start playing with options.

2) Open an account on ThinkOrSwim and use their tools to trade a dummy account or use real money. The learning curve of ToS is higher, but it is more powerful

The fundamentals are pretty simple, but the strategies for combining simple elements can become very complex. The fundamental questions are: will this "stock" (you can trade options on other financial instruments as well) move up, down, neither, on both? To what extent? Over what time period?

juped said 2 months ago:

Sell defined risk credit spreads 30-60 days out on underlyings with high implied volatility where the max loss is a small percentage of your bankroll. Buy them back at some percentage of max profit (50% is a good general rule). Read or watch videos until you understand why this is a good starting point - there's tons of resources out there.

Yes, brokers are idiots who think defined-risk spreads are more "advanced" than holding the bag for premium decay and not even knowing why you're losing money. Sorry.

itemGrey said 2 months ago:

I'm also interested in this. Would be great to share some resources.

arminiusreturns said 2 months ago:

I also have been learning about options. My goal has been to understand the financial sector better first and foremost, and only secondary is making some money. I am a newb whos only been going for about 6mos at this so fair warning to not listen to me at all.

1. The entire market is a big casino. The main question is what kind of risk you want to assume in your bet. Everything you do in the market is a bet/gamble. Don't fool yourself otherwise.

2. Options are a high risk avenue, but can also have some of the highest returns.

3. Learn the lingo. Traders use it so much you will be lost if you don't. (https://www.investorsunderground.com/acronyms/)

4. Start small to learn the ins and outs of your broker.

5. Understand that stocks are not a reflection of the companies actual value. They are a reflection of the markets perceived value of the company. The difference is enormous.

6. Do your own DD (due diligence). Read the docs the company has and is putting out. Do your own math. Don't rely on analysts, but you can use them as a reference.

7. Learn what IV crush is!!! (theta gang ftw)

8. Learn the most common strategies used. The wheel, put debit spread, cash covered calls, etc. Different situations and risk profiles in the moment are better suited to certain strategies.

9. See what crazy plays turned out good, and which ones bad, and seeing what strategy was used, how was the DD, etc.

10. Lastly, and less commonly talked about, never underestimate the power of powerful people's connections and interests in a company/stock. This is why I tend to focus heavily on ownership analysis and board analysis. Sometimes every normal, quant level algorithmic indicator points one way, but the connections say otherwise... and the connections almost always win out.

Bonus material: https://www.youtube.com/channel/UCcmZHsuUt_DOzcgIcLd0Qnw

hattori said 2 months ago:

Golden rule from my perspective, regardless of asset - don't follow analysts (it's all about risk management and if strategy/indicator is public it's highly likely ineffective) and price action is king. Playing with automation as supplement to above is smart investment.

_curious_ said 2 months ago:


zelphirkalt said 2 months ago:

I am revisiting my notes and re-watching lectures about basic machine learning algorithms like linear regression and logistic regression.

I am implementing these algorithms, so I need to understand a lot of the details. Here are some notes, which are work in progress: https://notabug.org/ZelphirKaltstahl/machine-learning-notes/... I try to write it in a way, that does not leave open questions and will be accessible to me and hopefully others years later.

REALiSTiC said 2 months ago:

Systems Thinking, mainly through reading Russell Ackoff's books. The Art of Problem Solving is good, Turning Learning Right Side Up is eye-opening (and definitely one of my favorite books lately) and currently reading Redesigning Society. Highly recommended.

raleighm said 2 months ago:

I recommend Systemantics also. https://en.wikipedia.org/wiki/Systemantics

phatle said 2 months ago:

I'm reading this subject too. Thinking in Systems: A Primer is also a good book. Highly recommended.

REALiSTiC said 2 months ago:

I started it couple of months ago, but couldn't get past the first few chapters. It was too dry for my taste. Even though she's a brilliant scientist (I'd recommend checking her classic The Limit to Growth), it seemed like the earlier resources about the topic are much better explained rather than the newer stuff.

troxwalt said 2 months ago:

How to take care of a toddler from 5 AM - 8 PM while trying to manage work and phone calls. Then how to not fall asleep while I"m working on projects until 1 AM. So learning how to function on 4-6 hours of sleep.

divbzero said 2 months ago:

I have a renewed appreciation of so much that we usually take for granted, chief among those are the contributions of our teachers and child care professionals.

golemiprague said 2 months ago:

Most teachers don't have to deal with toddlers and the ones that do don't have to do another job while taking care of the toddler. It is not such a big deal unlike being a full time housewife which does have to take care of toddlers while doing other house jobs. The economic value of a full time housewife is probably bigger than many of the jobs done by women in the office.

cmdshiftf4 said 2 months ago:

>Then how to not fall asleep while I"m working on projects until 1 AM. So learning how to function on 4-6 hours of sleep.

Try to take a ~30 minute nap in the evening somewhere that is quiet and comfortable but not the bed you sleep in. 4 hours isn't sustainable for long, but I've found a nap in the evening is sufficient to let me run effectively on 5-6 hours.

I say somewhere that isn't your bed because I've found that if you settle in the bed it can be far more difficult to get moving again, and also you can start to associate the bed with naps and have more difficulty getting to sleep when you mean to later, and staying asleep.

nogridbag said 2 months ago:

I'm in the same boat as the parent poster. Honestly it's hard to even find 30 minutes of free time and I only have one toddler. I'm the play person and my wife works multiple jobs (remote) so she's on calls most of the day. Seems the rest of our free time is is spent either cleaning or cooking.

If by any chance I do have time the only place to sleep that's not my bed is the floor. We sold all of our furniture and moved during the middle of this pandemic and all the dang furniture stores are closed!

afurculita said 2 months ago:

Same here. Also trying to learn a new language without a dictionary: the toddler's cry, and trying to learn to make myself fall asleep on command, but being awake in the same time.

tonyedgecombe said 2 months ago:

Sometimes you have to accept you can't do everything.

TeMPOraL said 2 months ago:

In similar situation like the GP (infant, a full time job + few other part-time commitments); learning how to accept that I have less hours in the day than I need.

urxvtcd said 2 months ago:

I watched all but one of Lamport's videos on formal specification with TLA+, though I yet have to tackle some project with it.

Right now I got my hands on Tufte's "The Visual Display of Quantitative Information" as per some HNer recommendation (thank you!).

Yeah, I lose interest quickly, eh. There's so much cool things to learn that in the end I learn nothing well. Bummer.

edit: grammar, spelling

sp527 said 2 months ago:

If you consider how knowledge decays, your strategy makes more sense. You get to something like Pareto proficiency in a subject and can then ‘reactivate’ that knowledge more easily in the future, should it be required.

You are also of course aware of that knowledge in the first place, which may be even more important. In the timeless Rumsfeldian: you have pushed back a bit at the unknown unknowns.

The alternative path of deeply learning something you may never apply (e.g. what happens to many PhDs) seems inherently less desirable, in my opinion.

tunesmith said 2 months ago:

I'm at about the same place with the TLA+ videos. I finished them a year ago and didn't feel like I could start a project yet, I more feel like I should watch them a second time. I have an actor system project on the side that I've felt tempted to model using TLA+.

doctoboggan said 2 months ago:

I am learning Vue.

I built a basic tool to help my wife track how much time she spends on Telehealth calls, you can see it here:


She is a family medicine doctor and now virtually 100% of her time now doing phone calls instead of clinic visits. She wants to do a QI project and needed to be able to track the amount of time her and her colleagues spend on various parts of the Telehealth visit.

gtirloni said 2 months ago:

May I ask what resources did you use to learn it?

doctoboggan said 2 months ago:

I mostly just followed the tutorial on their website and read through their documentation.

xzel said 2 months ago:

Nim! There was thread here about its new release. I hadn't given any time to looking at the syntax so I finally did because of that thread. Looks awesome. It doesn't look like hackerrank or leetcode support nim so I'll be trying out the different compiling outputs as well.

davemo said 2 months ago:

I’ve been working on my music production skills with a learn monthly class from Andrew Huang. It’s been good to push myself into production; I have many years of live music experience but haven’t spent a lot of time recording.

I’d classify my style as synth wave meets 80s arena rock for the current track I’ve been working on :)

My learning path is here [0] and I’ve also been uploading works in progress to my soundcloud [1]

[0] https://learnmonthly.com/u/dave-mosher-e2bc26/andrew-huang-m...

[1] https://m.soundcloud.com/dmosher

hrnnnnnn said 2 months ago:

Synthwave meets arena rock? If you haven't heard it already you're going to love this!


davemo said 2 months ago:

haha this was epic! thanks for sharing :D

DavidSJ said 2 months ago:

Reading: The General Theory of Employment, Interest, and Money by Keynes.

Studying: The Molecular Biology of the Cell by Alberts et al and Advanced Macroeconomics by Romer.

viburnum said 2 months ago:

Geoff Mann wrote an excellent free guide to the GT. I had just finished reading Keynes when I came across it and reading it really made it “stick.”


jmeister said 2 months ago:


thomas2718 said 2 months ago:

I have a cranky uncle who sends an email newsletter with links. Most of the links are conspiracy theories in my eyes. Some of them are about the climate. So to be able to make reasonable judgements, I've decided to learn about the science of climate. The IPCC makes all their reports available. I've started with the technical summary (84 pages, two-column). Most parts of it are well written and understandable with some basic knowledge of physics and chemistry. Nevertheless, it took several man-days to read it. As there is high confidence that the current warming is caused by humans, I've joined Citizens' Climate Lobby to contribute to the right laws to reduce the greenhouse gas emissions.

The same newsletter made me read a book about motivational psychology (The Righteous Mind). A very interesting topic, that I would love to learn more about, if I had more time.

Last year I've (re-)read Category Theory for Programmers. I had tried it once before, but gave up after a third, as the notation didn't make much sense to me anymore. I would like to read it again, creating flash cards for the most important concepts along the way.

jmeister said 2 months ago:

To form a balanced opinion, wouldn’t you want to read CC critical literature too?

olalonde said 2 months ago:

Writing my first library/cli in Rust. Never felt so productive in a systems level language but I still quite haven't internalized the variable ownership system and will probably look back at my code in a few months with total disgust. I'm on Rust's discord server (https://discord.gg/rust-lang) if any fellow learners want to chat.

pcvonz said 2 months ago:

I too started picking up Rust with the goal of trying out embedded development. I'm taking it slow though -- working through the book and a little cli tool. I am also on the discord.

ktzar said 2 months ago:

How to deal with my kids 7 days a week!

shabirgilkar said 2 months ago:

I'm learning Motion/Animation graphics in Adobe After Effects and 3D design in Cinema 4D Lite.I'm still beginner in both. Just in case you have wonderful resources to share to get me started, please share!

For Adobe AE I'm learning on these Youtube channels:

https://www.youtube.com/channel/UCQyoKfULtJaHqSxB80Efw4w https://www.youtube.com/channel/UC64eec0UYHxflyEWgyZOvLA https://www.youtube.com/channel/UCP3AIk974-PeB9bg1Mc7wug

For 3D: https://www.3dfordesigners.com/blog?tag=learn+cinema+4d+lite

echelon said 2 months ago:


I'm (re)learning OpenCV and OpenGL since I haven't used them since college. Working on this is also forcing me to learn the FFI corners of Rust I was unfamiliar with.

I'm combining Kinect (k4a) depth sensor data to build real time 360 degree point clouds.

canada_dry said 2 months ago:

Interesting project. Hope you'll post to github with whatever you get working.

Balgair said 2 months ago:

Going through the Western cannon. Specifically the Syntopicon and a rejiggering of it.

I've always thought the work was an absolute masterpiece, but utterly inaccessible and the holotype for the word jargon. So, I'm trying to write vignettes of the work, with characters that personify the 'great ideas' in the Syntopicon. Something like Godel, Escher, Bach. Hopefully, this personification will be more accessible and readable than a gigantic listing of page numbers and linking information.

Thus far, yeah, just wrapping my head about the linking documents is tough, but there is a lot of 'meat' on the bones and turning ideas into people is surprisingly fun.

I doubt I'll ever finish the project, but it's a great deep dive into the Western Cannon.


hkhanna said 2 months ago:

Reading SICP[0] while taking the original MIT 6.001 course online[1]. I'm hoping to develop a DSL for certain applications in government and law someday.

[0] The Structure and Interpretation of Computer Programs by Abelson, Sussman and Sussman

[1] https://ocw.mit.edu/courses/electrical-engineering-and-compu...

codegeek said 2 months ago:

A bootstrapped SAAS founder who sucks at Marketing. So I have decided to invest time learning everything about Marketing and Digital Marketing. From the ground up. Btw on that note, has anyone heard of Demand Curve which teaches Marketing courses ? I like some of their stuff online and thinking about taking their Premium Course.

jlbnjmn said 2 months ago:

I do in-house marketing and digital marketing. What challenges are you facing?

(I don't have a course to sell you and my services are not available for hire.)

codegeek said 2 months ago:

Thx for asking. oo, where do I start ? I guess setting up an overall strategy before any actual tactical execution. We do close to 1M in revenue already and have inbound traffic already but I got to this point somehow without any real planning. We write a few blog posts, content etc, got social profiles where we post, were lucky to get a few great backlinks and have built some relationships with influencers in our industry. But what do we now ? I have no real strategy here. Should we run ads ? Where ? Why google and not linkedin or vice versa ?

58x14 said 2 months ago:

There’s two divergent approaches to learning, sometimes referred to as top-down or bottom-up.

Top-down begins with broad context, such as the history of programming languages, the advent of objects and classes, and eventually zoom in to modern languages, syntax and functions.

Bottom-up works inversely; maybe you’re given a Python sandbox, a hello world, and a cheat sheet. You explore what you can do and build on those low-level operators to create foundations that frame wider context.

Effective learning is always a mix of both. Everyone learns somewhere on the spectrum, maybe bouncing around depending on motivation and experience.

With respect to your goal of learning marketing, you’ve identified your path of study: strategy. And just like your SaaS product was created out of an understanding of functions and needs in a space, so too should your research explore the functions available to your business and how they’ll affect your pipeline.

Simplified: you have a tool, and since you have revenue, you know people want it. Your goal is to find questions to ask and answer them, and use that feedback to make decisions regarding your marketing strategy.

-What is my biggest source of traffic to my site? Where do they spend the most time? What causes them to click buy? How can I use these data to optimize my funnel?

-What is my total marketing cost divided by the number of paying users (CPA)? What’s their expected lifetime value? What do other products in my space cost?

-What do my customers and affiliates describe my product as? What problems disappear once they subscribe? How does this translate to value for decision makers? Do my enterprise sales represent 80% of MRR or 10%? Should I use multiple approaches to entities of different scale?

The questions you’re asking are the right ones. And like any other field, they multiply and become more specific - but if you bear in mind the top-down goal (spend less, charge more) of a business, things will crystallize quickly.

jlbnjmn said 2 months ago:

Start by choosing a definite objective. Something obvious and unavoidably precise. Do you want to help more people, or the same people more? If the former, set a new users objective. If the latter, set a lifetime customer value objective. How will you measure success? Good objectives include both quantity and quality metrics.

Choosing a meaningful and definite objective is the second hardest part of marketing.

The hardest part is talking to customers.

You'd like to buy some more customers, right? So do some research. What kind of customers do you want? How much are you willing to pay? Where can you get a great deal on them right now?

Many business owners spent more time researching lunch options last year than customers. Why?

What's the most obvious way to get more or better customers? Spend 45 minutes writing down every idea you can think of. Every single idea. You'll get through the fluff after about 25-30 minutes.

Then find the options that use your existing strengths, preferably in a non-obvious to your competitors way, and turn them into a story.

That's your strategy.

Do those things and see if they get you closer to your objective. And move fast.

Try big things, don't tolerate slow learning, and remember that you learn from reflecting on experience, not thinking about tools and techniques.

Let me know how it goes!

AndreasBackx said 2 months ago:

I'm currently trying to get into game development and Rust so I'm trying out Amethyst: https://book.amethyst.rs/master/. I wanted to follow along with a roguelike game tutorial for Rust, but there was a problem. I would love to make some games that you can play co-op with some friends as I feel like there aren't enough games like it out there.

AlchemistCamp said 2 months ago:

Nice! I just did a simple roguelike in Rust a few months ago. I somewhat regret not looking at what it would take to make is work with wasm from the beginning, though.

AndreasBackx said 2 months ago:

Did you happen to use this? https://bfnightly.bracketproductions.com/rustbook/ If not, what did you use?

AlchemistCamp said 2 months ago:

I learned from this tutorial, which is a bit simpler: https://tomassedovic.github.io/roguelike-tutorial/

I have been wanting to go through the tutorial you shared when I get the time, though!

Liwink said 2 months ago:

Learning database systems now. Andy Pavlo made two of his great classes public. Class materials and videos are online. Thomas Neumann's papers are also really good.

- https://15445.courses.cs.cmu.edu/fall2019/schedule.html - https://15721.courses.cs.cmu.edu/spring2020/schedule.html - https://umbra-db.com/ - https://hyper-db.de/

uoaei said 2 months ago:

Nonlinear optimization algorithms.

At work I'm working on anomaly detection using ML at the edge and want to move beyond bog-standard stochastic gradient descent to fit the model(s) in favor of methods that exploit the use of analytical Jacobians / Hessians. So I'm comparing and contrasting the various nonlinear (gradient-based) optimization methods for my use cases and trying to see how fast I can make them run.

XCSme said 2 months ago:

I'm learning how to play the piano and also trying to learn more music theory so my guitar playing is not just randomly playing notes or just following online tabs.

I am also going to soon start marketing my project [0] so I am reading a lot about launching products, pricing and how to attract attention.

[0] https://www.usertrack.net/features.php

hhsuey said 2 months ago:

Taking a math course that attempts to teach some of the ways mathematicians approach their profession, which I hear is quite different than learning math or doing math the way it is taught in schools or utilized by other types of professionals (e.g. engineers). The class is called "Introduction to Mathematical Thinking" by Keith Devlin, and it's on coursera.org.

noobrunner said 2 months ago:

Interesting. how useful you think it is for regular techies or let's say aspiring ML engineers ?

OzzyB said 2 months ago:

Flutter -- and I'm in love -- it's like being a Flash developer/designer from 2006 all over again :)

kirubakaran said 2 months ago:

So, soon to be obsolete, abandoned by s/Adobe/Google/g? :-p

Just kidding, I'm building the mobile client for https://histre.com/ in Flutter and I love it. Google, please don't kill it yet.

axegon_ said 2 months ago:

I genuinely doubt they'll drop it in the foreseeable future. But every if they do, it's a mature project at this stage and I believe the community is strong enough to support it without Google back (even if that means a fork for licensing reasons).

OzzyB said 2 months ago:

Ha! Let's hope not, in fact let's pray that it becomes the de facto standard for Android dev :D

StrauXX said 2 months ago:

How much "better"/different is flutter compared to native Android development in your experience? I am currently being forced to do learn native Android development with Java and hate every second of it.

OzzyB said 2 months ago:

Ok, let me try:

- The tooling is excellent -- you can get a basic app running without much fuss; use VScode and the right plugins are you're golden.

- It's "Widgets All The Way Down" -- just wrap your widgets (objects) to add functionality/positioning/etc (it might seem like you're in "nesting hell" but it's actually quite intuitive and you don't need to manage tons of separate Components across tons of files which is nice).

- The layout engine is actually well thought out -- it might take a while to get used to it (it's not like CSS there are no negative margins for example) but once you do it's intuitive and easy to get layouts built fast. Remember everything is a Widget and that's ok, from your app root object to your button.

- It has the best parts of React -- Flutter's "setState" works much in the same way and only updates Widgets which need to etc.

- It's a "game engine built for mobile dev"; you hear this statement a lot and it's really what makes it's powerful. It renders super fast and animations/tweens/etc are easy to implement allowing you to design UI elements the way you want (hence my Flash comparison lol).

- At some point you will need to manage state, save yourself the search and just settle w/ BLOC, again there's plugins to help with the boilerplate, i.e. code-generation (which is also a thing and actually helpful).

- The package/ecosystem (pub.dev) is pretty young but the core stuff you'll need is all there. The main packages I've settled on are: Moor (sqlite), Bloc (state), Chooper (Api client) and JsonSerializer. UI packages are pretty hit-miss but you'll probably just write your own anyway.

- The SDK has tons of prebuilt Widgets that are actually useful and cover most of what you need to make a modern UI, and yes you can make a "native" Android/iOS UI look and feel if you want. I recommend watching the Flutter's Youtube channel series "Widget of the Week".

- Dart is a fine language, I love the way it's implemented async/await for example, should be no problem picking up if you have Javascript/Java experience. The great benefit is that it's only being used by Flutter so there's a nice symbiosis between the two with a strong focus on making a language geared towards interactive/ui/frontend work.

- No Android XML!

Hope that helps some xD

StrauXX said 2 months ago:

Thank you for that summary! ^^ That sounds like a great environment to work with. I will definitely keep a look on flutter.

blululu said 2 months ago:

This is more a matter of taste than anything else. Compared to the Java I would say it's much cleaner (Personally I don't care for Java). Compared to Kotlin, it is more different. Flutter uses a declarative programming model so it is conceptually very different in terms of how you think about an application. There are a lot of nice things about this model for basic applications, but things get complicated for certain applications (AR/3d for instance). Also it is also open sourced (BSD) so the fear of Google dropping it is not as grave as the company's proprietary 1p product offerings.

mbrameld said 2 months ago:

I'm learning to teach people how to fly helicopters. I got my private pilot license, instrument rating, and commercial pilot license over the last couple years and now I'm knocking out the flight instructor rating.

Tech-wise I'm digging into machine learning, particularly around natural language processing and sentiment analysis.

bcrosby95 said 2 months ago:

Been learning Elixir. I loved Erlang and Elixir smooths out a lot of the rough edges for me. Planning to use it for a web-based multiplayer RPG.

timc3 said 2 months ago:

I am learning Elixir and Phoenix. And to be honest I am not sure I like either. The lack of decent resources (I mainly use Python and JavaScript with some C#) so I am used to reading a lot of blog posts, I don’t really like the documentation and the answers in forums are over verbose. And then there is Ecto which gives me new respect for SQLAlchemy or even solutions in C#. Debugging is a bit rubbish as well and to top it off it’s not typed. Pattern matching is kinda cool though.

davidspiess said 2 months ago:

Maybe give F# a try. It's functional, strongly typed and since you already know .NET and C# the ecosystem and tooling will be familiar to you and could lessen the learning curve.

seneca said 2 months ago:

The book "Programming Elixir" is by far the best resource I found for learning the language.

timc3 said 2 months ago:

I am going to read it, I have heard good things so will put it on the todo list for this week. I usually enjoy learning languages so I don’t know why I am hating on this so much ( last time I felt like this was with Ruby which was mainly due to the community )

evsamsonov said 2 months ago:

"Elixir In Action" is a very good book to start also.

cordite said 2 months ago:

I am reading A Graduate Course in Applied Cryptography [1] by Dan Boneh and Victor Shoup, it's a work-in-progress theory and math heavy book. However it gives a deep understanding of what's going on and what can be assembled together. Unlike other crypto books, it isn't just glorifying DES, AES, and RSA.

[1] https://crypto.stanford.edu/~dabo/cryptobook/BonehShoup_0_4....

martinturner said 2 months ago:

At Miracle, Digital Marketing and Transformation Agency in Hong Kong, we help our clients improve digital services to make them simple, clear and fast. We help our client transform, create and improve their product in a digital way such as branding, web & app design, e-commerce solution, Digital Marketing strategy, Virtual Reality (VR) and Augmented Reality(AR), SEO. We are experts in their fields and enjoy challenging work. We work together to share knowledge and build our capability to improve user experiences. This helps us work smarter and more effectively. We are confident, capable and committed. We nurture curiosity and encourage our people to keep learning. We have flexible work arrangements and a supportive environment. We help our people balance their whole life and be the best version of themselves. https://www.miracles.com.hk/

miqkt said 2 months ago:

D3 for work, and Russian out of pure (seemingly masochistic) interest.

I'm a native English speaker and Russian would be my fourth language. Perhaps I'm simply approaching the limits of my language ability, but the grammar rules with cases that I've learnt so far are doing my head in. It's very discouraging. I don't intend on becoming completely fluent, and so I'm trying to find shortcuts to be fuzzy about the volume of grammar rules to keep in mind.

CGamesPlay said 2 months ago:

I'm also learning Russian at the moment! I'm a native English speaker and am presently dealing with the current global events while cooped up in Siberia.

What have you found difficult? What resources are you using? For me, I tried memorizing the rules for cases, but it was a complete waste of time: it was trivia disconnected from any usage of the language. What is (slowly) working for me is focusing on a single phrase with common words (e.g. в сибири, два пива).

Aside from the obvious resources (a good app/textbook; Anki), I have really learned a lot of the fiddly bits from this YouTube channel: https://www.youtube.com/user/russiangrammar

miqkt said 2 months ago:

Oh wow, stay safe!

Thank you for sharing your experiences and the YouTube channel recommendation.

I've been alternating between the interactive lessons on http://learnrussian.rt.com/ and "The New Penguin Russian Course". I've been enjoying the former a lot more because there's audio to accompany written content, which helps when I try to enunciate words. There are also tests, which helps me measure retention. The latter book feels more like dry reading to me, but coverage seems very comprehensive.

I haven't been learning for all that long, but the two things that have been regularly catching me out are:

- Knowing which "o" letters in the word are stressed, in order to pronounce it correctly (I default to reading them as "o" when they should instead be "a")

- Looking up new words in sentences is a bit harder because they often occur in conjugated forms (i.e. not only verbs, but nouns too)

CGamesPlay said 2 months ago:

Cool! There's an easy tip for "o": If it's in the dictionary as о́ then it's the stressed syllable and you say the "o", otherwise it's "a". Example word: о́вощи, the first "o" is stressed. You should include the accent mark on any flashcards you make, since it can literally change the word you are saying (сто́ит, стои́т).

https://en.wiktionary.org/wiki/овощи https://en.wiktionary.org/wiki/стоит

drewmate said 2 months ago:

In my experience, the unstressed "o" as "a" is only mostly true and varies by region. This is especially true for unstressed "o" preceding the stressed vowel.

For example, "молоко" is pronounced differently in different parts of the country. For me, the first "o" sounds more like a "ə" (think bOOk) around Moscow, and more like "a" further east.

spydr said 2 months ago:

So you actually find it difficult? I am a native Russian speaker and have also taken 3 quarters of Russian in college. Compared to English I found the grammar much easier to understand. A word is read exactly how you would sound out each letter (with a few exceptions). Ukrainian grammar is even more simple.

jumasheff said 2 months ago:

RE: "word is read exactly how you would sound out each letter (with a few exceptions)" nah, you write "короче", but you should say "кароче", write "остовайтесь" but read "аставайтесь" etc. otherwise you'll sound funny. Russian has a lot of exceptions.

CGamesPlay said 2 months ago:

I have no difficulty pointing out the exceptions to strict "read-as-written" in Russian, but it is definitely much more consistent than English. The cases are totally foreign to an English speaker, though. I also find the variety of Russian motion verbs to be a hurdle.

war1025 said 2 months ago:

I spent a couple hours this afternoon trying to start a fire with a cheap magnifying glass. If I had a decent tinder bundle I would have succeeded. Amazing how easy it is to get something smoking. Burnt a whole bunch of stuff, just never managed to get to fire.

skellera said 2 months ago:

I used to draw on planks of wood with a magnifying glass when a I was a kid. Could add another thing for you to do!

Breza said 2 months ago:

May I suggest dryer lint as tinder. I keep all of mine in a bucket for just that purpose.

war1025 said 2 months ago:

I'll have to give that a try next time.

We have some Lamb's Ear [1] in our garden that I had a decent amount of success with, but I used up most of the dead stuff from last year over the course of the afternoon.

[1] https://en.wikipedia.org/wiki/Stachys_byzantina

qxfys said 2 months ago:

I am learning how wireguard [1] works, and try to prove their claim that it is suitable for small embedded device, i.e. this one [2].

[1] https://www.wireguard.com/

[2] https://github.com/Zolertia/Resources/wiki/Firefly

collyw said 2 months ago:

I really think the idea of constantly learning (something new) is pushed too much in our field. I think we should encourage mastery in fewer topics rather than shallow superficial knowledge of lots of things.

It's a balance I know, and we shouldn't be super focused especially early on in our careers. But at my current job we have a huge tech stack and a tiny team, I am constantly learning, but never in any depth, just enough to solve the last bug and then change to something different. It feels very like a very unproductive way of working. Very little of the new tech feels like it actually helps. Kubernetes while we don't actually need to scale for the foreseeable future. NoSQl when we don't actually need to scale. Asynch web servers when synchronous would be fine. A React monstrosity on our frontend, when server side rendering would be perfectly functional for the problems we are trying to solve. Google cloud - fair enough we actually do need that one or something equivalent.

Edit: On looking through the other answers I see that a significant number are not tech related which is refreshing to see.

freddref said 2 months ago:

Right, I think the key is learning something new in an area where you know the least. Even getting to know the simplest concepts can go a long way.

My favorite example: cropping a photo to improve composition. It's simple and easy to do, but it can have a comparatively large impact on a photo.

Learning more and more specialized tech can give diminishing returns.

collyw said 2 months ago:

Yes that makes sense to an extent. The problem is that people were insisting on using MongoDB for problems better suited to a relational DB when it was faishionable, and now that decision lives on 6 years later.

Or I see a lot of CV's where people collect web frameworks - which essentially do the same thing. Yet whenever I inherit Django code, it seems to be done by someone with only the most basic knowledge of how to get things done.

kiliantics said 2 months ago:

I've been rebuilding the engine of a 1980 Honda motorcycle for the last while. Just following the manual and reading on forums and watching youtube videos. Yesterday, I finally got it fully back together and put it on the bike and reassembled everything else. It didn't start perfectly but it did start, which was really satisfying. There is a little more "debugging" left to do on it but I believe I will get it back in shape eventually. All this from no knowledge of engine mechanics a few months ago, I now feel like I can competently talk about the different parts of a combustion engine and do some basic diagnosis for vehicle problems.

Doing this has been one of the best experiences in my life and it was a very cheap bike to buy and I only needed a pretty basic set of tools on top of it. I don't own other vehicles but I bet that, down the line, it will save me a lot of money that I may otherwise have given to mechanics. I would recommend doing this to anyone that has an interest in it, it doesn't take expert knowledge, just a healthy level of gumption :)

my_green_book said 2 months ago:

I am learning how to write. After seeing a few people with blog, I realize the importance of writing. It makes you think clearer and understand a subject deeper.

input_sh said 2 months ago:

Honestly, there's not much to learn there, you just need regular exercise to become better and better at it.

May I suggest setting yourself a fixed schedule (let's say, one article published every two weeks or so) and sticking through it? Your initial articles will probably suck, but you'll gradually improve in the upcoming months.

awinter-py said 2 months ago:

here's how I got started writing:

1. take notes on a topic that has continuing relevance for you (like, you're learning something over a few days or weeks) 2. wait for your project to hit a milestone or for your notes to hit a critical mass 3. reorder your notes into sections, discard bad ones, and flesh them out with text 4. pick the best line, that's your title 5. print it out and leave it under your pillow 6. edit the next day 7. publish

mr_puzzled said 2 months ago:

I want to learn how to build a phone, maybe something like the pine64 and librem phones. I'm a web dev so it's..challenging. How do I learn to:

* understand the hardware components required in a phone?

* understand the software components required? postmarketos and plasma mobile maybe?

* How do I even start to build a prototype? What components would I use? Maybe start with using a raspberry pi to make a DIY phone?

I know this is an open ended question, so any pointers would be appreciated.

mettamage said 2 months ago:

If you really have no clue about anything, then I might be able to help a tiny bit.

Get basic hardware knowledge by doing nand2tetris [1]. It's about building a computer from the transistor up, all the way until you create your own tetris game.

The Hardware Hacker: Adventures in Making and Breaking Hardware (manufacturing hardware in Shenzen) [2]

This guy shows a cool couple of YouTube videos on hacking iPhones in Shenzen [3]. Hacking as in exploring and tweaking, not as in breaking in.

[1] https://www.nand2tetris.org/

[2] https://www.amazon.com/Hardware-Hacker-Adventures-Making-Bre...

[3] https://www.youtube.com/channel/UCO8DQrSp5yEP937qNqTooOw/vid...

sloaken said 2 months ago:

Thanks, I have ordered the book and plan to start the nand2tetris. I really loved the way the guy explained the HDL. Very clear, I look forward to learning it and doing a lot with it.

non-entity said 2 months ago:

Trying to figure out how to teach myself EE.

It looks like theres basically two suggestions:

A) Following the same sort of curriculum a university would teach. I'd have to manage to dredge through the math, but I suppose it's possible but would lead to probably the most competence. Unfortunately however, I was hoping for the big MOOC sites to have more content. EdX has some decent introductory stuff but not much beyond that.

B) The other recommended way is the hobbyist way and what I suspect most other software people wouldnauggest which is just building shit that interests you, ignoring first principles. Unfortunately I'm not sure how this would work out, since my projects in any domain seem to be a bit, er, grand and you supposedly need a strong math background to build anything more than basic circuits.

I'd dread the math a lot less if it were more cut and dry. I wish I could just jump right to calc, differential equations, linear algebra, etc. But more realistically, it would involve me hunt and picking parts of algebra and embarrassingly even simpler stuff. I was looking at some Khan academy stuff and while it turns out I remember more than I thought, theres still plenty I had forgot even existed.

Another alternative that seems good, but not realistic is that there are some community colleges that have professional certificates that teach electronic circuits pretty quickly. Unfortunately this is prohibited by the absolutely fucked "residency requirements" for this state whereby I wont be a resident of my current state for years (at least for tuition purposes, I'm a resident for just about everything in a few months). Also those courses are all in person which, for some unique reasons dont fit my life situation.

zargon said 2 months ago:

What kind of "grand" circuits are we talking about here? As someone who entered EE through the hobbyist approach, there isn't much I'm interested in that has me wishing I had formal EE education background. Do you want to do analog? Because there's hardly any math involved in practical applications of digital electronics.

non-entity said 2 months ago:

The last 2 ideas I had were a ISA SATA card (dont ask) and attempting to build a DOCSIS modem (because issues with my shitty ISP supplied one intrigued me).

I actually tried to build a Arduino based EPROM reader for a chip I extracted from an old electronic device, but ran into some issues and am kinda discouraged because that seems like it was pretty basic.

zargon said 2 months ago:

ISA SATA card makes perfect sense to me. :) All those MFM drives are dead or dying. Protocols like SATA are implemented in hardware, and you buy an IC controller chip for the purpose. So the task with this project is to implement something that talks to the SATA controller and something that talks to the ISA bus, and bridge the two. Problem is that most SATA controllers will be designed to connect to a PCIe bus. Probably easiest to use a SATA-PATA bridge chip. Not sure how easy those are to find these days.

DOCSIS -- yeah, that's a lot of specialized knowledge to make a good one. A huge part of the complexity for that is probably board layout stuff. EMI & EMC, etc. This is a whole separate field of study on its own.

Getting that EEPROM reader working sounds like a good starter project. There's huge variation of EEPROMs though, so it would be sensible to focus on just the EEPROM you have. Who knows, your issues could have been a problem with the scavenged chip. But I2C (if your chip was I2C) is finicky and every chip seems to do it slightly differently.

i_don_t_know said 2 months ago:

I'm currently working my way though a three part series of electronics classes offered by GeorgiaTech's EE department on Coursera. Search for "Bonnie Ferri". The recommended order is Linear Circuits 1 & 2, then Intro to Electronics.

aerovistae said 2 months ago:

Learning the bond market, figuring out the different characteristics of all the different types of bonds, what the risks are, what the potential for gain is.

I trade options on equities regularly and recently a friend has been looking for help on figuring out how to handle a large amount of money they came into, so I figured brushing up on bond investing would be helpful since their risk tolerance is substantially lower than mine.

mathisonturing said 2 months ago:

What resource are you using for bonds and what did you use for learning options?

I've become interested in stocks/trading recently and have been wanting to understand it well enough before losing all my money. I started Financial Markets [0]. Just finished Week 1 and it seems a little too broad/dry so far. Any recommendations are welcome.

[0] https://www.coursera.org/learn/financial-markets-global

aerovistae said 2 months ago:

I taught myself by reading a lot of articles online, basically. I start by googling something basic and clicking the first 4-6 results and reading them, opening a lot of extra tabs for things they link to as I go. If anything is unclear, I repeat the process, googling the unclear thing. I take notes as I go.

Slowly a general understanding emerges and then I can flesh it out by seeking specific details once I know what I don't know. And by reading and comparing multiple resources I get a very full and objective understanding.

Investopedia has been the single most helpful site by a wide margin. Their content is top notch.

When I hit on something I can't find the answer to, I ask the customer service at my brokerage (Etrade) and they're very helpful. But if it's a very specific question, I've found I'm best off asking to speak to their customer service team for that specific thing, like their bond desk or futures desk, etc.

g_langenderfer said 2 months ago:

Buy SPY and save a bunch of time

_hardwaregeek said 2 months ago:

I'm learning the ins and outs of WebAssembly. I just picked back up writing my compiler to WASM for my toy programming language (think JS crossed with ML). Right now I'm getting a feel for writing stack based bytecode and implementing basic features like local variables and control flow. It's not much, but I just got factorial to compile in my language which felt totally awesome.

enos_feedler said 2 months ago:

This sounds really neat. Do you have an open source repo for this? Would love to check it out. What framework are you using to write the compiler itself? LLVM, or something else?

_hardwaregeek said 2 months ago:

Here's the repo: https://github.com/nicholaslyang/saber Fair warning, the code is quite gnarly.

I'm not using any frameworks. Took a bit to figure out code generating wasm, but once I got the basic emitter/IR working it got a little easier. Plus you start being able to read the binary format after a bit of practice.

cjbprime said 2 months ago:

Nice! FWIW I've been solving some wasm challenges in infosec Capture The Flag events and it's a nice way to learn the bytecode.

_hardwaregeek said 2 months ago:

Cool! So far I've been reading the spec and looking at the output of wat2wasm.

cjbprime said 2 months ago:

I really like using Firefox's debugger -- you can step through bytecode as if it was JS.

anon012012 said 2 months ago:

Rhetoric, sophistry, debating. Politics. The goal is to establish UBI before the end of the year. If I had been smart enough I would have specialized in AI.

I think there's untapped potential for techies and scientists to infiltrate the political landscape.

I don't think I'll ever be famous but I'm arguing everyday and pushing hard for people to fight for themselves, and to push the ideas.

muralimadhu said 2 months ago:

Doing a deep learning course through fast.ai. Has been fun so far. For an ML noob, I like how we talk about deploying something end to end right from the first class and work our way backwards to the theory

dmux said 2 months ago:

I've been interested in the Tcl language since 2010 or so but have only written small scripts up to this point in time. I decided it was finally time to dive in so I've been working my way through "The Tcl Programming Language: A Comprehensive Guide" by Ashok P. Nadkarni as well as learning about the Naviserver ecosystem.

mattlondon said 2 months ago:

Porting http://imrannazar.com/GameBoy-Emulation-in-JavaScript to Typescript as a way to learn about how to write an emulator, as well as taking advantage of newer JavaScript APIs (e.g. requestAnimationFrame, ArrayBuffer etc) that were not available when this series of articles was written in 2010.

We had a gameboy as a kid, but the ZX Spectrum (also Z80 CPU-based) meant more to me so hope to take what I learn from the great articles from imrannazar.com and apply to writing a ZX Speccy emulator (the gameboy had dedicated-hardware for sprites etc so not everything will be transferable).

Yes both gameboy & spectrum emulators in javascript have been done already, but this is just for personal learning/fun/itch-scratching. It has been quite instructive both from a remembering-fundamental-cs-classes/how-computers-really-work perspective, as well as modern javascript

oblib said 2 months ago:

I've been watching youtube videos about ancient cultures and sites. Some of them are lectures that are very well down, others go off on some pretty silly tangents but the videos of the sites they show are often pretty good and that's as close as I'll ever get to visiting most of them so I focus on that when they get to talking about aliens building them and what not. I think I've about exhausted that line though.

I've also spent a bit of time watching youtube videos on a channel called "RÜNGE CARS". This guy hand forms aluminum bodies and builds his own chassis and they're pretty cool cars he making. The craftsmanship is impressive and so is the process. He pretty much takes you through it step by step. I still have quite a few of those to take in.

Aside from that CouchDB 3.0 was release just a couple weeks ago so I'm learning about what's new and how it applies to my work. They're doing some impressive work on that.

Beefin said 2 months ago:

ancient cultures videos sound cool, and recs?

sddhrthrt said 2 months ago:


brutus1213 said 2 months ago:

I am a fan of old history docs. Search for mesopotamia on youtube for a fascinating one. I also like medieval ones. Check out A history of Britain. Any recs on your side? No aliens pls :)

rc-1140 said 2 months ago:

Trying to develop (ha) some web development skills and I was studying interview questions. I've never done anything web-related outside of making API calls, so I'm reading "The Little ASP.NET Core Book" by Nate Barbettini. I appreciate that the author is focusing on presenting the things one needs to know to do $"{foo}" so far, other materials are either too wordy or are really childish/tasteless.

I started doing Leetcode several months ago because I wanted to change jobs soon, but it's really exposing what not having a traditional CS background is costing me. I feel guilty looking at the answers on there and in Cracking the Coding Interview but I genuinely don't know how to make things faster. Seeing some of the answers in CTCI after attempting some of the string related questions made me ask myself "well, why wasn't that talked about in the informational section preceding the questions?"

wenc said 2 months ago:

For ASP.NET Core check out Pluralsight. Got me up to speed in 2 weeks.

john4532452 said 2 months ago:

Learning probability for strong foundation in ML. The books i am following are "First course in probability by Sheldon Ross" and "Probability and Statistics" Michael J. Evans and Je¤rey S. Rosenthal

This is the first time i am studying based on the topics rather than following syllabus. I wanted to understand covariance for calculating similar interest b/w users to suggest the posts viewed by a user in the app i am developing. This took me down the rabbit hole and forced to learn everything required to define covariance. Its talking a lot of time but i feel it's worth it because now i have a strong foundation. Also its nice to follow more than one book because i have no attachment to any of the books. When in college i used to get attached to my notes or the first text book i follow, but studying a topic from many books have no attachment to either and its liberating.

greenyouse said 2 months ago:

I started hacking on a browser extension to inject source-maps into requests using HTTP headers this week. It's a dev tools extension which should allow full source-maps to be used in production sites without the usual comment at the end of the file. I've never done dev tools browser extensions before so it's fun to learn about.

zests said 2 months ago:

Computer networking. I’m reading through TCP/IP illustrated.

Also learning about Linux. I used macOS for about a year and thought that I knew “Linux” but now I’m seeing how far the rabbit hole goes. I installed arch linux and am currently just customizing it and immersing myself in the community. Eventually I’ll pick up a systems or operating systems book.

BenjiWiebe said 2 months ago:

For playing with both networking and Linux, you should really look into dn42. It's pretty much an internet sandbox.

conroy said 2 months ago:


I'm writing a compiler for SQL that parses DDL (CREATE TABLE, etc.) and queries and outputs type-safe Go. It currently supports PostgreSQL, but the plan is to support more engines and more output programming languages.


tluyben2 said 2 months ago:

I am trying to understanding more about why programming is so complex (it is some kind of calling after 25+ years of programming). I am doing this learning via working on projects in a diverse range of technologies (asp.net with c# & f#, js & typescript & purescript + node, js + typescript + react(native), haskell and clojure) and by working on proofs in tla+/agda/idris.

My paid work is currently (inherited projects in) c#, so I try to mix environments by experimenting (and studying the runtimes / compilers at the same time) with little tools/libs [0] (not for production, but I keep wondering if there are ways to bring things that help me from in language A to language B).

[0] https://github.com/tluyben/PoorMansRefinementTypes

bamboozled said 2 months ago:

Basic Math and Pre-Alebra.

I'm learning it in a way where I actually understand how things work rather than just the way I was blindly taught in high-school.

Sounds boring but it's pretty interesting.

tomduncalf said 2 months ago:

Started working through the Coursera Machine Learning course By Andrew Ng. I’ve always wanted to understand ML better, and this seemed like the ideal opportunity to actually do it, especially as I might have some work coming up using ML.

So far, I’m very impressed, very clear presentation style and he does a good job of explaining the fundamentals and maths (which is good as I’m pretty rusty at maths!) while still keeping it fairly concise - my main issue with learning from video is often that it “waffles” a lot and I could get the same knowledge from text much quicker, but it doesn’t feel like that here.

I may switch to the deep learning specialisation or try to get my hands dirty with a more hands-on course after I understand the basic concepts but we will see, I’m actually enjoying relearning some maths more than I expected to!

aashu_dwivedi said 2 months ago:

The assignments in the old course are in matlab. There are also unofficial assignments available in python. They can also be submitted for grades in coursera. You might want to have a look at them.

tomduncalf said 2 months ago:

Good tip, thank you!

Nabi said 2 months ago:

Audio programming and all jungles surrounding it - C++, plugin frameworks, Fourier transform, filters design etc. Step by step, often hard but also rewarding.

CameronNemo said 2 months ago:

You might be interested to check out sushi, which is a headless DAW written in C++.

Nabi said 2 months ago:

Thanks! Haven’t heard about it before, will check. Although I’v heard about Elk - looks like by the same guys. Recently started playing around with Bela as it has Eurorack kits.

Havoc said 2 months ago:

HTML/React/JS. Amateur hour I know, but all my previous efforts have been compiled code not web

realthing said 2 months ago:

Web is compiled

akirakurusu said 2 months ago:

Cantonese - it is an incredibly rich language with tons of regional differences, slang, and history spanning thousands of years, way more rich than modern Mandarin. The fact that it has fewer resources online to learn it has made me more resourceful at finding good books, academic grammar articles, and has gotten me deep into HK pop culture. I'm a native romance language speaker and Cantonese is so fundamentally different in its structure than my language it is a joy to learn. Unfortunately, the CCP is constantly cracking down on the language, with a very political campaign to dismiss it as a "dialect" despite it being mutually unintelligible with Mandarin and having its own independent history.

zkid18 said 2 months ago:

What is your background? By the time I lived in HK I found it more difficult to study compare to Mandarin in terms of speaking and listening. Though learning traditional characters seems more exciting. But now I live in Japan, Japanese has more intersections between Cantonese rather than Mandarin

qeng-ho said 2 months ago:

I'm curious; are you studying Cantonese or Taishanese or some other variant? Asking simply because Cantonese is pretty mutually intelligible with Mandarin; I'm a native Mandarin and Cantonese speaker and barring some vocabulary (and pronunciation which is often just slightly "off-sounding" Mandarin), they're almost identical.

akirakurusu said 2 months ago:

Been studying standard HK Cantonese for almost 2 years at this point, can understand a wide variety of written Cantonese, news, stories, but cannot even read a basic mandarin sentence I see on wechat. Cantonese having 6 tones (with 9 in some regional variants). There are over 2200 different syllables in Cantonese, more than twice the number in Mandarin: https://www.britannica.com/topic/Chinese-languages/Standard-....

I'd argue the majority of daily vocabulary is completely different, both in writing and in pronunciation, than its mandarin counterpart, such as some of the most commonly used words 而家,頭先,邊個,喺唔喺係,佢哋,講,有冇,點解,佢同佢講,畀 as in 我講畀佢聽,聽日,尋日,嗰陣時,嗰個,嗰啲, I could go on and on. Even after all this time, I didn't know the characters 是 or 哪里 until learning them a few weeks ago. Likewise, if I were a native mandarin speaker and heard the relatively simple, common sentence 佢哋而家喺邊度呀 spoken to me, I would understand exactly 0% of it. Grammar is significantly different with word placement, nuance of ending particles, usage of adverbial comparisons using Noun + V + 得 + 過 + Noun, using 畀,未。。。添, etc. I cannot understand a shred of mandarin when spoken to me, despite being able to communicate conversationally and understand most of spoken Cantonese from others. https://languagelog.ldc.upenn.edu/nll/?p=1211. There are varieties of sources analyzing the etymology of words in sinitic languages as well as their grammar structures and phonologies. Both languages are far from being mutually intelligible for monolingual speakers. Perhaps being a native speaker in both has allowed you to have a comprehensive mental-map of their isomorphisms.

math said 2 months ago:

rust. the ownership system it embodies seems important and I want to understand it deeply. also, the language has momentum.

jakeinspace said 2 months ago:

Getting back into regular guitar practice (mostly classical). Also trying to broaden my musical horizons a bit: playing around with some virtual synths and my analog synth. I'm currently shopping for a hollow body or solid body electric guitar and amp, since I want to start getting into blues guitar. Hoping that I can meld some of the music production/synth stuff with guitar practice by laying down some backing synth+beat tracks and recording some guitar licks on top, hoping my little preamp buffer sounds okay.

I'm also starting a Coursera course in audio signal processing. Lets me scratch the technical itch a bit while not distracting from music. My goal for later this year is to build a guitar pedal or 2 from scratch.

zuppy said 2 months ago:

Just ordered my first guitar and audio interface yesterday. Any tips for really starting from 0? I will be looking for some online courses, but there’s so much information online that it is hard for me to find out which is good for absolute beginners and which is not.

colkassad said 2 months ago:

Not sure what exists out there, I started over 25 years ago. A good first step is to learn chords, starting with major and minor versions of each chord. Get comfortable switching between them. This is where most people quit as a lot of chords are not friendly to untrained fingers.

What can help with this is a concept called the "1, 4, 5" rule (it's actually called the I, IV, V rule but let's keep it simple). Basically, you start in a key, say the key of A, assign that to 1. The 4th and 5th chords from that starting chord always sound good with the 1st. So for the key of A, the 4th and 5th are D and E. Notes start over after G, so if 4 and 5 go past, like with G, you start over at A. In the key of G, the 4th and 5th are C and D respectively, for example. This is at the heart of blues music. For me, the easiest three-chord progression for my fingers to learn was G, C, and D.

There are a lot of little "rules" like that in music theory and it can be fun to learn them and experiment. If you find that you are really getting into it, I recommend dropping $300 or so on a decent acoustic guitar. There is something to be said about an instrument you can just pick up and play and not have to worry about wires and interfaces.

zuppy said 2 months ago:

thank you very much (to you and to all others who replied). i went with an electric guitar as it will allow me to play during the night, without bothering neighbours. when i will get better i would love an acoustic, especially for flamenco.

shorts_theory said 2 months ago:

As a beginner, I really like Justin Guitar (https://www.justinguitar.com/site-map-and-lesson-structure). But I'd love to know what other great resources are out there!

dceddia said 2 months ago:

There’s a book called The Principles of Correct Practice for Guitar [0] that I found to be helpful. It’s not at all about playing specific songs or chords but entirely devoted to the mechanics of how to practice, how to hold the guitar, how to notice and relax tension, how to build speed, stuff like that. It’s a bit meta but I think it’d set you up with a good foundation.

[0] https://www.guitarprinciples.com/shop/the-principles-of-corr...

wkrause said 2 months ago:

Jamplay has a lot of traditional video tutorials for all levels.

Yousician has some fun guitar hero-esque tutorials if you’d like more interactive feedback.

_prototype_ said 2 months ago:

Web app development using clojure/clojurescript. Also learning clojure itself. So far its been an absolute joy/blast. I'm really wanting to use this professionally but the amount of jobs using this tech stack is incredibly non existent.

Hopefully that changes soon

danpli said 2 months ago:

If you happen to get stuck on setting up a ClojureScript dev environment (like I did when starting out with the official docs), check out this write-up: https://danplisetsky.github.io/posts/2020-03-26-getting-star...

_prototype_ said 2 months ago:

Excellent, thanks for the link!

erikpl said 2 months ago:

Doing this part-time studying + working thing right now, finishing up my first year of Informatics/CS after changing my major.

For school, I'm learning networking. Finding it a bit dry, especially learning about packet structures and such. The book we're using, "Computer Networking: A Top-Down Approach" by Kurose & Ross[1] is great and the authors' personalities really shine through!

For work I'm learning about databases and how to gain access to it from a web app. The world of databases (specifically PostgreSQL) and SQL is entirely new to me. Currently trying to figure out how to best connect my Flask app with my Postgres DB.

Currently learning Rust whenever I have the time/motivation. It's a great language with some really clever design choices, but it's a pain in the ass to learn, especially without experience with lower-level languages. The incredible amount of other cool languages, such as Clojure and Elixir, can make it hard to stay focused!

Also been meaning to get into vector graphics (Affinity Designer[2] is on sale right now) and philosophy, but you know...the usual excuses. Honestly, the incredible amount of CS-related topics I know nothing about, including some really basic ones, makes it hard to study anything else out of sheer guilt.

As for philosophy, if anyone are curious, a book that was recommended to me by a philosophy major buddy is "The Problems of Philosophy" by Bertrand Russell[3].

[1] https://www.thriftbooks.com/w/computer-networking-a-top-down... [2] https://affinity.serif.com/en-gb/designer/ [3] https://www.thriftbooks.com/w/the-problems-of-philosophy_ber...

said 2 months ago:
jacobedawson said 2 months ago:

I'm doing Harvard's CS50 (2020) and working through Steven Cochan's Programming in C (4th edition) alongside it. Coming from a JavaScript / front-end background learning about pointers and manual memory management is eye-opening.

_nothing said 2 months ago:

The Trickeration Routine, a solo jazz routine by the late Norma Miller, one of the original Whitey's Lindy Hoppers from the Savoy Ballroom in Harlem. It's one of the harder group routines out there because unlike the very popular Shim Sham[1], there are no repeating sections.

Also just started trying to learn Svelte today. And I'm about to jump on the breadmaking bandwagon.

Video here: https://www.youtube.com/watch?v=mIhi4BuDSf4

1. https://www.youtube.com/watch?v=JF9WmOlO4ww

cs702 said 2 months ago:

* Learning and building a more intuitive understanding of Projective Geometric Algebra (PGA). Looks very disruptive for all kinds of computer graphics applications. PGA replaces the use of Vectors, Quaternions, Dual Quaternions, and the entire machinery of Linear Algebra with a single unified, elegant framework that "just works." Feels a bit like magic.

* Exploring and playing with new capsule routing algorithms in deep learning models for vision and language tasks. Particularly intrigued by routing algorithms in which output capsules seek to "explain" (generate/predict) their input data (e.g., EM matrix routing, Heinsen routing).

adamnemecek said 2 months ago:

Enki (the speaker in the video you posted below) is running a community called bivector for all GA people


Join the discord https://discord.gg/vGY6pPk.

Check out a demo https://observablehq.com/@enkimute/animated-orbits

cs702 said 2 months ago:

Yes. These links are shown in the video :-)

jlelonm said 2 months ago:

What makes it so disruptive?

cs702 said 2 months ago:

The following video has a good, developer-friendly introduction to the subject that should answer your question. Take a look in particular at the code snippets that are sprinkled throughout the video and notice how much cleaner, shorter, simpler, less computationally costly, and "universal"/"exception-free" the code becomes: https://www.youtube.com/watch?v=tX4H_ctggYo

curiousigor said 2 months ago:

Trying to learn or build my skill around music production with Ableton. I've been in a alternative metal band for almost 8 years, but electronic music has always interested me since I have quite a few ideas in regards to melody and stuff like that (I'm the singer in my band).

I just applied to a course from Berkeley trough Corusera, and they are really great, but I'm not trying to rush trough, as this is my main way of trying to learn, making me lose interest because of the overflow of information.

If anyone has any good books, courses or tutorials on this, that would be a great help too :)

ojosilva said 2 months ago:

Learning how to sing.

Our voices are a beautiful, natural instrument we carry everywhere with us, from the shower to lonely business trips to walks in the park. I've always had the desire to put it to work. Singing is also an ancient tradition of bringing melody and lyrics to people. For me it's not about singing like a soul or blues singer (ie Joe Cocker) but more like Chet Baker: get the notes right (pitch) and building them into elegant phrasing, which needs control of tempo and great diaphragm training. Music is undeniably great for your brain, which can include learning and memorizing a ton of lyrics, tempo and pitch. As an art also very appreciated by most people, who really feel grateful by a (good) vocal performance, sometimes more than by any other instrument. Hearing yourself improve and sing well gives a high dose of happiness and confidence builder.

It's also an excellent breathing and speaking exercise, which increases your ability to communicate effectively, projecting and modulating your voice effortlessly and making it easier to jump in into a conversation. Also gives your voice the stability to fend off your nerves or anxiety. For an introvert like me it's definitely a very effective tool, it makes me feel like "in the matrix" as far as speaking goes, as my brain thinks ahead of time or just in time, so my mind feels snappier. In other words, I feel like a more spontaneous person since I've started to sing.

kkleindev said 2 months ago:

Would you mind sharing how you 'learn'?

fluroblue said 2 months ago:

Not op though I’ve been doing it for a while now. A crap ton of scales and exercises. Lots of work to develop the many muscles in that area as well as teaching them how to coordinate together.

garfieldnate said 2 months ago:

I've always had an interest in computer graphics, but never studied it in school. I found Jamis Buck's _The Ray Tracer Challenge_[1] and got totally hooked on creating a ray tracer. The book walks you through creating everything from scratch, starting with matrix multiplication all the way up through reflection/refraction and rendering (a useful subset of) OBJ files. The book gives you test cases in cucumber one at a time, and when the tests pass you have a new feature! It's super addicting. I've been learning Rust while going through it, too (repo: [2]). There's a forum associated with the book where people share images they've created and ask for help, and it's fun to see what other people have tried or what languages they're trying to learn while going through the book.

I've enjoyed learning a programming language at the same time as learning an interesting subject so much that I plan on repeating it!

[1] http://raytracerchallenge.com/ [2] https://github.com/garfieldnate/ray_tracer_challenge

AnyTimeTraveler said 2 months ago:

I'm a informatics student and am currently studying online. My focus is on embedded programming and I am currently working on a side-job, where I program an embedded device that is going to act as a wildlife deterrent to protect deer from ending up in wheat fields that are about to be harvested.

I have many hobby projects next to that and can never finish any of those, but they are also only motivated by 'oh that might a cool thing'. I have not yet found a side project which solves a problem big enough to motivate me to actually finish it.

dschadd said 2 months ago:

Cybersecurity! I just started on Hack The Box. I am not sure if I want to go all the way for OSCP. Regardless, it is really fun and I've always wanted to learn how to "hack".

thomashobohm said 2 months ago:

I'm still in school and am just starting to get into more difficult math; right now I'm learning introductory odes, vector calculus, and introductory analysis. All three are really enjoyable, but in some ways vector calculus and differential equations feel like a review, in that the hardest part of each is just the calculus I've forgotten since Calculus I-III. I find analysis to be the most interesting course because of how novel it is. I remember at the start of the semester, it was so confusing; the concepts weren't difficult to grasp, but I just didn't understand why we were learning what we were learning, or what it had to do with calculus, for which we were supposedly trying to develop some theoretical foundation. But as the weeks went on, I began to appreciate the beauty of the subject, in small increments. I began to understand why the real numbers were constructed just so, and why we needed to understand ideas like compactness before we could talk about ideas like convergence.

One quote about analysis that I read online somewhere is that you should study it until it starts to feel "natural." At the time, I guess it sounded true, but I didn't appreciate what it actually meant. Now, I'm starting to.

It takes a lot of effort to digest each new lecture, but I'm excited to see what the rest of the course holds, and to graduate to "real analysis" afterwards.

davidwparker said 2 months ago:

1. Woodworking / carpentry. Making custom slide out shelves for our pantry. 2. Flutter. Love it. 3. Cooking (I know how to cook already, but want to level up)- via Masterclass and a few books.

formalsystem said 2 months ago:

Video editing (Adobe Premiere Pro + After Effects) and Video streaming (OBS + Twitch).

I figure it's gonna be a while before we get back to normal. People will continue to crave attention and video is a more scalable way to disseminate your knowledge vs traditional meetings or Zoom calls.

I'm specifically looking at doing more analytical video game streams and educational Machine Learning content for the advanced n00bs.

Who we view as charismatic will change quite a bit in the near future since we can endlessly edit and improve our message before we share it with others.

dokka said 2 months ago:

I bought the cheapest trumpet on ebay($65) and I'm learning the trumpet. It's a lot of fun. I'm slightly annoyed that I'm not programming as much, but this is fun too

ublaze said 2 months ago:

I'm learning how to do web development again. I've only been working on infrastructure tools/services at my job, and I'm re-learning concepts like how to authenticate users, and my first time seriously using React, Django and Typescript.

My project is a hosted blog platform where you can edit a Google doc & publish it as a blog post, which is useful for publishing rich blog posts with tables, while keeping features like review/collaboration, tracking changes etc.

edwinyzh said 2 months ago:

Hey! Mine (https://docxmanager.com) is similar but for Microsoft Word on Windows :)

ublaze said 2 months ago:

Super cool! That looks professional. I have a landing page up for people interested in the idea and want updates - https://simpleblog.io/

edwinyzh said 2 months ago:

Great! I wish you will be success with your project.

madmax108 said 2 months ago:

The current COVID scene has given me a new sense of what I want to be learning, and I'm using the enthusiasm to pick up a few things that have been on my bucket list for a while now:

I'm learning:

- Spanish with Duolingo

Visited Spain last year for a few weeks. Loved the people, the culture and the food. And really really wanted to pick up a new language.

- Music production/mixing with Ableton Live

This has been something I've wanted to play with for a very long time, and thankfully there are so many resources on the internet to get started. Music has always been a constant part of my life, and production is basically coding with notes and sounds! :)

- Just started getting my beak wet with investing in the stock market

I've always been skeptical of investing my $$$ in the stock market, more so being the first generation in my family earning enough to afford (what my parents would call) "luxuries". But I want to be more invested (literally and figuratively) in making my money work for me. Thankfully, have built up more savings than I need for years and given the stock market scene right now, it feels like the right time to dip my feet in for the long term.

I dunno how much of this will last over the next few months, especially once we start going back to office to work (I'm a person who LOVES going to office even though we have unlimited WFH), but one can hope! :)

kristopolous said 2 months ago:

The business side: How do you find your customers, position a product, and create demand. What about new markets, segmentation, downstream and upstream?

Bad technology that gets this part right almost always does phenomenally, astoundingly, inconceivably better than great technology that gets it wrong.

I'm tired of building things that only I and a few people really like, like some underground band only a few people know. It's nonsense, I gotta learn how to do the human part better.

jlelonm said 2 months ago:

What are some resources you’re using to learn that stuff?

kristopolous said 2 months ago:

Here's some books





Each of those books are projects (the order I put them in is more or less recommended) ... that's probably a couple months of careful study.

If you want to intersperse it with light reading, the following non-fiction novels are really good examples of the principles in practice (in not always obvious ways):



You can get used copies on ebay for about $3 each.

Thoughtfully engaging with the material is likely worth 1,000 times that.

Also the commonly cited Reid Hoffman, Seth Godin and Peter Thiel books I think are mostly a waste of time. Al Ries is ok (and quick) and Jim Collins is good if you're trying to turn around a 5,000 person company, but oh, if only I was so lucky.

Anyway, if you want to come back after reading those, I can give additional recommendations

kristopolous said 2 months ago:

oh also, disrupted by dan lyons, although not as great, is good fun about the financialization and bullshit of modern tech life. https://en.wikipedia.org/wiki/Disrupted:_My_Misadventure_in_...

For a 90s take on that theme, try this one: https://en.wikipedia.org/wiki/Barbarians_Led_by_Bill_Gates

It's worth quoting how microsoft responded to some groundbreaking technology from Go computing by Microsoft putting together a fabricated circus claiming they had matched the technology:

  Eller's group kluged up this demo for videotape that showed how
  edit in place would work. He launched Excel with a chart in it. Then
  he launched Word with the chart cut from the Excel program. The
  smaller Excel window was hiding in the background, and the Word
  window was bigger so the audience couldn't see Excel. Eller drew a
  gesture on the chart sitting in Word, which called Excel to the top.
  As long as Excel was in the right place, it came right up on top of
  where Word was, and it didn't look like anything had moved. It
  looked like Word had just popped up the Excel menus right into the
  middle of the Word documents so it could be edited. Eller made the
  changes in Excel and closed it. He hooked up a software instruction
  that told Excel to move to the background and disappear behind
  Word. Then it looked like he was working again in Word with the
  proper Excel document embedded in it.

  It looked great on the tape, but it was total bull, pure smoke and
  mirrors, the apotheosis of vaporware. There was no linking or embedding 
  occurring. Eller was simply pulling one application to the
  front of the other one.

  At the company meeting, executive Mike Maples stepped up to
  the podium.

  "Okay, here's this other thing we're working on," Maples said.
  "Here I have my document, and I have my tablet here." He held the
  pen up and waved it.

  "Now I can go into my Word document here, and I can write."
  While Maples was talking, charts and images flashed on the
  screen, and everybody thought he was actually writing on the pen
  tablet as he spoke at the podium. In actuality, he was just waving his
  pencil over blank paper while the videotape ran.

next up on that stack for me to read are Barbara Garson's The Electronic Sweatshop and Robert Cringley's Accidental Empires.
Beefin said 2 months ago:

indiehackers is great for guides there

pezo1919 said 2 months ago:

Learning about health and covid to maximize chances of survival of me (27) and my parents (53).

dade_ said 2 months ago:

https://www.fast.ai/ Practical deep learning for coders. Also Synapse Matrix homeserver.

withinboredom said 2 months ago:

I've been trying to build real systems with Microsoft's Durable Functions. I've been utterly fascinated by the patterns that have emerged on some of them.

w3mmpp said 2 months ago:

What are those patterns? I've used Azure functions a lot but never had (I think) a use case for durable ones.

withinboredom said 2 months ago:

I’ve come up with the following:

Watchdog Pattern: A orchestration needs to succeed. A watchdog entity checks up on it to make sure that failures are reported and dealt with appropriately (ie, refunding a payment if it fails catastrophically)

Circuit Breakers: Polly has their own implementation, but I found it easy enough to implement my own (don’t recommend in production, just use Polly)

No database: it’s a bit slow to get things done, but it’s amazing to create entities that don’t need to store state in a database. Paired with the watch dog pattern or preloading, you can have entities running “in memory” which may be faster than a dB lookup or the data could be projected to a db for analysis. I’ve been exploring this most recently.

Aggregate entities: these just count things, or store references to important entities that they count. This works amazingly well instead of COUNT DISTINCT queries.

nukeu666 said 2 months ago:

German, should lower the barrier to emigrate

CalRobert said 2 months ago:

From where are you emigrating?

It's not Germany, but if you happen to be from the US the Dutch American Friendship Treaty is worth a look. Relatively attainable bar, especially for people in tech.

nukeu666 said 2 months ago:

India, most migrations happen through intra-company transfers but that's not going to happen in a small startup where I work right now

sarabande said 2 months ago:

I'm trying to learn advanced Mandarin (while not living in PRC/Taiwan). I've bought some business Mandarin books whose content I wouldn't have sought out: international trade, shipping, etc.; I come from a tech background.

Surprisingly, logistics (and the Mandarin around it) is interesting! Going through some of the "Incoterms" now. It's fun to learn something new and a language at the same time.

indecisive_user said 2 months ago:

What are some of the resources you used to get to your current competency? I took classes back in college so I have _some_ understanding, but I'd love to get to a conversational proficiency.

jpgvm said 2 months ago:

I've 2 main things going right now. IRL I am working on my culinary skills. Cooking has always been my passion but doesn't pay bills hence I write code. Been mostly working basics, learning proper knife skills, focusing on doing recipes from scratch and experimenting a bit to gain intuition about how things like emulsification work.

On the code side I am building a logs database in Rust. I have previous experience building databases and in particular time series databases so most of the learning here is mostly about Rust which I have used before but not for this type of project. Also getting deeper into regular expressions, query languages (parsing/lexing/AST) and query optimisation than I have in the past.

Rust is growing on me more than it did in the past. I think a) because it's a much better language than it was when I used it previously and b) my experiences since I worked with it last have garnered me more respect for it's design decisions and type system.

Feeling like I am learning lots of stuff right now despite being trapped inside so that is good. :)

Schwolop said 2 months ago:

I design board games for fun and unrealistic dreams of making entire hundreds of dollars. But the part I suck at is making art and iconography. So I'm spending some time learning how to drive GIMP and Inkscape. Just this week I have completely finished the game I've been working on for six months now: http://www.drtomallen.com/half-the-battle.html (unfortunately the manufacturer is in lock-down, so the only option to play it is to print your own...)

I'm still awful at it, but I can now manipulate art from other sources fairly comfortably. And I'm at a point where I can make geometric types of shapes and patterns easily enough from scratch. It's already enough that I look at logos and things differently now, to see how I would go about building them in these tools.

Unfortunately, I still dislike this aspect of game design compared to the fun of lying in a hammock and run thought experiments on the actual gameplay systems!

colinjoy said 2 months ago:


One too many times have I though to myself that a just little bit of awk might go a long way to help with extracting information from a pile of data.

Now working my way through Effective awk programming. So far, no regrets.


thomas said 2 months ago:

Been spending a lot of my time geeking out about fountain pens. Shocking amounts of information out there! Like this cartridge guide https://unsharpen.com/fountain-pen-cartridge-guide/

Also learning about email parsing. Not something I had thought about before but there is a lot to learn and lots of edge cases.

inetsee said 2 months ago:

I've been meaning to try and learn Lojban for quite a while. Now that almost all of my distractions are shut down for the forseeable future, maybe I'll be able to make some progress. I have acquired copies of "English Through Pictures" by I. A. Richards, and I thought I'd do something similar, only for Lojban. If I do make significant progress with that, maybe I'll post it somewhere.

tartoran said 2 months ago:

Im learning Scheme/Racket. I started from HTDP and moving on from there, so far I am loving it, havent been this excited in a while. I am also ramping up on F# and the community is growing and quite nice. I recommend Scott Wlaschin’s Domain Modleling in F# and his website fsharpforfunandprofit.

I am learning Latin and Spanish on Duolingo but thats more at the hobby level, about 10 min a day.

jefftk said 2 months ago:

I'm learning how electronic music works and trying to merge it with the kinds of live music I've mostly played before. Sort of like, if someone were inventing the organ now, what would they do? Here's where I am so far: https://www.jefftk.com/p/rhythm-stage-setup-v3

rayxi271828 said 2 months ago:

Probably old news to most here, but: Systems Thinking. Am finishing Donella Meadows book and interested in going deeper into this particular rabbit hole.

Also, related, found this in Coursera while looking for courses on Systems Thinking: Big History (https://www.coursera.org/learn/big-history)

nihilazo said 2 months ago:

I'm learning sewing! It's very far off usual HN things but it's nice to do something completely different to what you usually do.

truebosko said 2 months ago:

I'm learning how to build 3d environments using three.js, specifically react-three-fiber

Fun way to jump back into React while also learning new concepts!

funfunfunction said 2 months ago:

How to solve the rubrik’s cube that’s been sitting on my desk for three years.

cushychicken said 2 months ago:

I've had a lot of fun learning offshoots from the function generator I'm working on building. (http://cushychicken.github.io/bfunc-quickstart/ if interested.)

- Started learning about building versioning into firmware. Found some great posts from the Memfault Interrupt blog on GNU build IDs, and another one from the Embedded Artistry blog on adding more generic versioning.

- Also learning about analog drivers and generic analog design techniques from designing the output stage of the next board revision.

- Learning the most from building prototypes and selling them to people. It's given me a crash course in writing good, useful docs, and getting people up to speed quickly.

If you want to get involved, there's definitely more boards, and plenty of stuff to be done. Feel free to email me at <hn_username> at gmail dot com to see about arranging a board for you!

aklemm said 2 months ago:

How to run as much Fediverse and and IndieWeb software as I can. I want to understand the entire scope of what is possible today for a fully personal federated cloud, homepage, and social network. Along the way I want to understand what holes there may be and what approaches could bring more people onboard.

So far I’m having success and fun with Pleroma and Matrix.

simonw said 2 months ago:

Spanish and how to play the guitar.

verandaguy said 2 months ago:


Originally, I was going to do a hiking and photography tour of Fennoscandia in the Fall. I'm not sure if that'll still come to pass with the ever-looming collapse of society, but at least it's pretty refreshing to learn a new (non-programming) language for the first time in over a decade, and for the first time in my adult life.

erikpl said 2 months ago:

I am a native Norwegian speaker! How is it going so far?

verandaguy said 2 months ago:

I'm slowly going through the Duolingo tree :)

Went into it with pretty much zero knowledge of the language, and the thing that caught me most off-guard were some of the non-phonetic spellings, like _jeg_ and _kjøpper_, but else the actual grammar is similar enough to English that it's not causing too many issues!

nfrankel said 2 months ago:

Upping my game on Big Data (and incidentally ML) in the Cloud with "Google Cloud Platform Big Data and Machine Learning Fundamentals" (https://app.pluralsight.com/paths/skill/big-data-foundations)

jiux said 2 months ago:

My 6 year old daughter and I are building a quadruped walking cat robot. We are both learning a lot of new concepts as we go.

Our robot is not operational yet, so I will include a YouTube link below of the creator with a couple of his own completed “cats”.


sneak said 2 months ago:

Did a deep dive on go templating systems to start adding more frontend web interfaces to my projects beyond simple json apis.

Settled on pongo2, which has django-style multiple inheritance, which is IMO essential to keeping an html template hierarchy organized.

With it, I’m writing an ActivityPub spider (code is messy and not fully organized yet):


and also an HN transparency tool that highlights things for me to read that get nuked from the frontpage:

https://git.eeqj.de/sneak/orangesite (live at https://orangesite.sneak.cloud )

Next up: rust. I have about 4 go projects I want to finish first, and having a good templating system means they will be somewhat polished when I shelve them.

gaze said 2 months ago:

APL! I wanted something completely nutty that would change my way of thinking. The characters are kinda fun and you pick them up after really drilling them for 3 days or so. Then you begin to learn to read trains and things. It’s a really fun language.

That and I’m learning condensed matter theory from Altland. Can’t recommend this text highly enough.

contingencies said 2 months ago:

Learning again, albeit temporarily, how not to live like an entrepreneur: it's pleasant, and my body is thanking me.

ebiester said 2 months ago:

As I have a little time on my hands a few things.

Non-technical: I'm learning to create music to help satisfy my creative side. I'm starting with the piano, and when I can get to a basic proficiency, I'll slow down and jump to some voice lessons I bought a while back. Then, I'll put it together with reaper, using some of what I learned as a teenager.

Technical-Creative: I'm returning to my project to do a deeper dive on what makes programmers bad, mediocre, good, or great, and creating a track that others can follow. While I have the framework already, I am trying to learn a whole set of skills well enough to teach others.

Technical: I'm patching up holes in my EcmaScript ecosystem knowledge. I never really took the time to truly grok Shadow Dom, the Redux patterns, and the like, even though I was managing a team who was working in it.

dirtybirdnj said 2 months ago:

Right now I'm learning Gatsby and re-learning React after having done one project with it and putting it down for 12+ months.

I'm learning how to rebuild my 3d printer for the third(?) time. Each time something breaks it starts off as blind confusion, and over the weeks I figure it out and then I feel like a genius when it it works.

I have a business I want to build, and I'm working on estimating what the cost of the individual items / products are, how long they take, and how long it really "costs" me. I'm working on fixing up the website and improving it.

I have a wall of post-it notes in different colors I'm using to track all of this stuff. As a developer I hate time tracking and project management in general but I'm learning a lot by doing it myself. Progress is slow, but at least there is progress.

Andow said 2 months ago:

As a native English monolunguist I'm learning Russian.

Rust for a side project I've just started.

Music production techniques and how modular synthesis works.

I also started skateboarding a couple of months ago after around a 8 year break so I'm getting my flat ground practice on my patio haha (although I'm taking it easy for obvious reasons)

mindv0rtex said 2 months ago:

Let me know if you have any question about Russian (email in profile) :-) And I am a Rust learner too!

zamalek said 2 months ago:

I'm about 3 weeks into Rust right now. You'll probably want to use it exclusively in short order.

evsamsonov said 2 months ago:

Could you say please what is the motivation to learn Russian?

blinkingled said 2 months ago:

Trying to learn some oratory and/or one on one communication skills and not having much of a clue where to start!

My problems - I feel like I fail to quickly assess the other person and fail to adjust my communication - so I am either way too technical in the lingo or way too much of a layman talk that makes it feel like I am being insincere!

I also fail to give up the 'problem solving' angle in communication - like I have to remind myself constantly that communication is rarely transactional or a means to an end.

I am realizing what I am missing is that I fail to take interest in other people and their viewpoints and with some concrete strategies and practice I could do better.

It's never been a problem as such - the few times it was a problem I managed to retry and resolve, but I want to bring joy and ease into my in-person communications.

gerdesj said 2 months ago:

Go easy on the sauce and simply listen.

blinkingled said 2 months ago:

Yeah - starting to incorporate the listen part but that is leading to awkward pauses as I listen too much - which is next on my list to tune :D

Jerry rigging this is hard - I think a more relaxed, in the moment and self-forgiving approach is needed.

gerdesj said 2 months ago:

I'm learning how to keep my employees interested.

We are a small IT consultancy, 20 years books and always had three months loot in the bank just in case. I could never have predicted this thing but I've always wanted to sleep at night so insisted on a war chest. Damn I'm boring but as it turns out boring is quite handy now. We have furloughed (UK) a few troops. We top up the extra 20%.

The calls on the helpdesk are decreasing but at some point I will need to find more work for the kids. I see a major programme of updates in the near future. BIOS, switches etc etc etc ad nauseam. If it fails to move it will be updated. We do rather a lot of that anyway but to ensure that contracts are fulfilled, we need to be seen to be doing something.

Any other employers here like to pitch in (be careful for obvious reasons)?

said 2 months ago:
gcheong said 2 months ago:

Do you think now would be a good time to explore ideas for productizing any aspects of your business?

tosic said 2 months ago:

I'm trying to get back into graph drawing [1] while learning to code in rust. I used to do some experiments in graph drawing a while back for my master thesis, but lost track. Now with the ACM archive [2] being open i got inspired to look into this again, even though many of the relevant recent papers would have been available anyway. Not the classics though.

[1] https://en.wikipedia.org/wiki/Graph_drawing

[2] https://www.acm.org/articles/bulletins/2020/march/dl-access-...

Lorin said 2 months ago:

I learned about mutant testing earlier this week (testing your tests by semi-randomized source code modification).

Cool talk about the subject: https://www.youtube.com/watch?v=yNMBOj7JUPs

namaljayathunga said 2 months ago:

As my company is going to build a prediction app, I'm Currently learning Data Science, Big Data, Python and Sever Scaling. Because of the Corona situation, I'm currently working at Home. So, I have time to learn more, however, It is boring to learn while home.

jlarocco said 2 months ago:

I enjoy learning, so I try to learn new things as part of my day to day routine to keep things interesting.

I just started following OCW's Finance Theory class and I'm starting to read the text book on corporate finance and watching a lecture a day during lunch. I've always been interested in economics, so this is just learning for learning's sake. https://ocw.mit.edu/courses/sloan-school-of-management/15-40...

I'm just about done reading "A Look at Boulder: From Settlement to City," about the history of Boulder County, CO. Again, in this case I'm interested in local history, so I'm just reading it before bed for fun.

Two weeks ago I installed FreeBSD on a spare hard drive, and I've been reading through the handbook and learning how to do various tasks as they come up.

I'm writing a Spotify client in Common Lisp, so I'm learning about the Spotify API and architecture. The beginnings of the library are on Github, but right now it's really just a utility library for making API calls, and not much of a client. This started as the thought, "It'd be neat to have a library to control Spotify from the REPL," and is turning into a full client because spotify-tui is the only client I can find on FreeBSD. https://github.com/jl2/cl-spotify/

At work I've been helping the test team write functional tests for some Windows software, which I haven't used in years, so the past week I was re-learning "just enough" about Windows and Python's win32com library, and learning about AutoIt for the first time.

I've been learning to track stand on my bike - it's something to do during stoplights.

And I impulse bought a pot roast on Friday, so today or tomorrow I'm going to learn how to cook one.

asdfzalsd said 2 months ago:

Reading various biographies!

Some of the books on my list are: The Secret Life of Salvador Dalí Doctor Goebbels: His Life and Death I, Claudius by Robert Graves The Agony and the Ecstasy Lust for Life Carl Jung Memories, Dreams and Reflections. Stephen King - On Writing

tomnj said 2 months ago:

Haskell and compilers at the same time! Following Appel’s awesome Modern Compiler Implementation in ML: https://github.com/tdp2110/HaskellTiger

Cthulhu_ said 2 months ago:

I got a new job not long ago which has given me a lot of time to both learn and come up with a new application; I'm learning a couple things on-the-job:

  - Go & its entire ecosystem
  - Packaging & deployment via RPM
  - Layout & design a web ui (this was done by someone else in my previous jobs)
  - Personal project management (I'm a one-man team atm)
  - Code generation via Swagger
  - Architecture & technology choices and documenting them as I go
  - Working from home full-time (not by choice) and staying productive
  - Warhammer 40K <_<
stevekemp said 2 months ago:

Currently hacking up a prototype of a puppet-like system for automating host setup.

So far I can parse a configuration file, apply rules, handle (manually specified) dependencies, and configure triggers to run on rule-actions.

Not a bad state to be in for a few hours work. Of course the big decision is if I continue, and write modules for doing more than I have right now. I suspect the rational answer should be "no". But I kinda like the existing implementation, and being go it is trivial to install/deploy.


selfish-duck said 2 months ago:

GraphQL (advanced). Already been using it for 4 years now (yes back when there was no tooling nor best practices) but I decided to go further in the schema design thinking and bought Production-Ready GraphQL to help with it. Strongly recommend the book as it goes quite deep on the subject.

Also experimenting with my 4th home-brewed beer.

"Soft skill"-wise I spend time helping people with good (so I hope) advice and recommendations and a bit of interview mentoring to enter the software development industry. Makes you learn a lot about yourself and how you can motivate and help people big time with only a tiny amount of your time and energy, just sharing stuff you know.

kevstev said 2 months ago:

I have always felt I have not really understood things from the bottom up in terms of CS- like how do we really get from bits to software? I have been building Ben Eater's 6502 computer, which has been mostly enjoyable (cutting/stripping wires and getting them into the exact right small little hole is tedious at best, hurts my back at worst).

I have also been reading Modern Operating Systems by Tanenbaum- though a quite old edition from the early 200s- wondering if its worth putting on hold until I can get my hands on a newer edition.

Next up, I'd like to do Ben Eater's 8 bit computer as well as nand2tetris.

lappet said 2 months ago:

I am learning how to get better at writing short stories in April by participating in Camp Nanowrimo


woohoo7676 said 2 months ago:

Learning some Vue.js - struggled a bit to get into React (nothing against React, might try it again later), but I find Vue+Typescript with class components works well for me as a .NET dev.

Web dev tooling really has come a long way in the past few years!

fuddle said 2 months ago:

I'm learning Rust language, I'm reading through the official Rust book at the moment. I have to say the book very well written and easy to follow. I'm looking forward to using Rust full time sometime in the future.

znpy said 2 months ago:

I'm learning LDAP and Oauth2, at the moment.

Learning about directory services is empowering, and stuff like keycloak let you build your own single-sign-on solution with very little investment (except for willpower to learn).

juped said 2 months ago:

Studying general relativity, since it's the flagship application of my field of mathematics (differential geometry) and yet I only know the basics. It is, of course, the most elegant scientific theory of all time.

jmeister said 2 months ago:

I’ve been wanting to ask this a differential geometer - what do you think of Sussman and Wisdom’s book as a DE intro for an CS/applied math person? Thanks!


juped said 2 months ago:

Never read it, but the preview pages look pretty neat. I might pick it up for a fun read. Might want to pair it with something like do Carmo's Differential Geometry of Curves and Surfaces (which is quite accessible) for the mathematical side.

jmeister said 2 months ago:

Thanks for the recommendation. And yes, the lisp book should be fun. Sussman is a legendary CS educator.

zeouter said 2 months ago:

Unity & GameDev. After work I'm a bit drained so it's slow but nice.

leonfedden said 2 months ago:

I have been writing an AI for poker playing.


I've been learning about Counter Factural Regret (CFR) and have been using it to iteratively work towards writing a no limit texas hold'em poker playing AI agent. It's still in the early stages but seen success with simple forms of poker such as Kuhn, and have expanded to a form of short deck poker.

I have also been brushing up my web skills by creating a visualiser for the poker state via Flask and Vue.js

noobrunner said 2 months ago:

I am doing Coursera 'Intro to Genetics & Evolution' and fascinated by it. Have been in tech for several years doing mostly same old things, so found this a refreshing change. The instructor is very good

rangerranvir said 2 months ago:

Trying to learn Machine learning and writing about it. Latest post: https://news.ycombinator.com/item?id=22786374

m3kw9 said 2 months ago:

Learning how to read a company’s balance sheet, cash flow, income to see which are at risk of going under. How the stimulus can save but weaken a company’s financial structure during these times

hakanito said 2 months ago:

Any good resources for that?

said 2 months ago:
bartread said 2 months ago:

Gulp 4 because, grr, excessive breaking changes from 3.9.1.

Also how to fix my car. I'm currently refreshing all the coolant pipes since once ruptured the other day. It's not that hard, but some of the pipes are difficult to get to, and I'm procrastinating about disassembling essentially the entire front end of the vehicle in order to be able to access the radiator and replace pipes attached to it. I've already replaced the ruptured pipe no problem but, since all the pipes are the same age, I figure it's only a matter of time before another splits.

lazyjones said 2 months ago:

Production engineering (I'm an IT guy, mostly retired and dabbling in real estate, also a Tesla fan, I suppose).

Manufacturing is fascinating and I'd love to own a small factory at some point, profitable or not!

werber said 2 months ago:

I got a tattoo gun. I’ve wanted to learn since the nineties and I’m loving it. Dumb, but I did my first one on myself today and it was so satisfying to accomplish something I’d totally given up on

stormtroper1721 said 2 months ago:

I made a list a few weeks ago:

1. Finish my ml research project 2. Learn rust 3. Start a blog 4. Learn Lin alg and stats 5. Go through all of the deep learning book (goodfellow et al.) 6. Start working with GANs or RL

from: https://twitter.com/stormtroper1721/status/12421529408627220...

Other than that, I'm working on building my own Numpy-like array lib in Rust. I'd be glad to chat about it if anyone's interested

wreath said 2 months ago:

The mechanics behind the basic barbell movements (working on becoming a Strength Coach on the side).

I'm about to order tools for leather work as well. I want to make a leather wallet and a sunglasses case.

said 2 months ago:
newbie578 said 2 months ago:

Trying to learn Flutter!

I started learning Android but a lot of people shared their experience and it just doesn't seem worth it going all in on Android, especially considering that for most of my projects "native" experience is not a must (i.e. social app for sharing book opinions (i.e. a Goodreads which doesn't suck).

I am also impressed by the data, Flutter and Dart a growing incredibly, and I would like to be riding the early waves.

If anyone has any ideas, tips or experiences, please do share!

tunesmith said 2 months ago:

From being an enterprise programmer, I'm try to learn how to scale back and deploy single-author websites to prod. At work we do modern stuff, but I've got this 12-year-old LAMP website, a collaborative creative writing site, that I'm deploying to prod just by logging in to the linode and doing git fetch / git pull. It feels so wrong but it's so easy. Still too paranoid to make the site public though, for now it's just me and my friends.

38932ur98u said 2 months ago:

Ukulele/music theory and spanish

pankajdoharey said 2 months ago:

Machine Learning using fast.ai courses i would say they are really good and fast way for programmers to get onboard without going through all those boring statistics classes.

noobrunner said 2 months ago:

Have heard lot of good stuff about fast.ai courses. I am doing cs231n again. This time taking my time to understand the math and theory in much more detail

pankajdoharey said 2 months ago:

Nice suggestion i might try those once i finish fast.ai

openfuture said 2 months ago:

General topology, Lean and lattice theory.

I am also making steady adjustments to my xmonad configuration so I suppose I'm also learning haskell and that particular library ecosystem.

OldTechSucks said 2 months ago:

I'm "learning"(calling functions) opencv(using cv2 with python3) to find the coordinates of a string inside image.

Even though it's useless in the industry: https://www.reddit.com/r/computervision/comments/axvjfb/do_i...

Lazze2k5 said 2 months ago:

WebGL and animations, put together a NPM package to load GLTF files and show them with animations and materials. Quite tricky to get right but fun. Planning to use it for a game idea I have.


Demo: https://larsjarlvik.github.io/?model=robot

_Understated_ said 2 months ago:


I built a web based chat site for my family to keep in touch. I'm opening it up to everyone shortly... next few days I hope

I'm looking to add video calls too.

No libraries, just .NET, HTML and JS

gyvastis said 2 months ago:

I have been fascinated by Machine Learning for a while now but never got around to it until recently. I have landed on Kaggle almost by accident and started doing the courses. Loving it! Give it a go. They also have competitions on different datasets and leaderboards to make it more fun.


jjice said 2 months ago:

I've been reading through Lion's Commentary of Unix V6. Very interesting to finally understand how multiple processes and scheduling is done, as that was always a mystery to me. There's a great version where the source and the commentary are side by side: https://warsus.github.io/lions-/

CodeGlitch said 2 months ago:

Janani Ravi's Machine Learning course on PluralSight[1]

It's using scikit-learn, which I've been meaning to pick-up for awhile. Other than that, learning how to use the ELK stack (ElasticSearch, Kibana) for some network-traffic analysis stuff I've been meaning to implement.

I think we'll all come out of this period a lot smarter :)

[1] https://pluralsight.com

Aweorih said 2 months ago:

Game development with the unreal engine in combination with 3D modelling in blender. I'd also like to learn some c++ when I'm more familiar with UE. While using blender I discovered that you can script there with python which was also on my long todo list. It's a bit slow since so much at once after work but still a lot of fun. I began to learn this because some friends and I wanted to make a car racing game.

mrwnmonm said 2 months ago:

Algorithms, wrote just one in the last two years and I know that I won't write many in the next job, but you know, you have to study it for the interview.

dctaflin said 2 months ago:

Two things: German and Differential Geometry.

German is just because it's fun and it's my best second language by far, so I'd like to get fully fluent.

Differential Geometry is a diversion from working through Gravitation by Misner, Thorne, et al. I found I needed more math. Now it has kind of become an end in itself, however. It's the hardest thing I've studied since college (which was a long time ago).

said 2 months ago:
erwinh said 2 months ago:

Learning about recommender systems both for work-related activities and personal interest. I see a lot of people learning hard mathematics or physics concepts. This is somewhat related to machine learning but also has daily-life implications as it gives some insight into how these social media platforms shape their algorithms for building the social feeds or Netflix recommendations for example :)

anfractuosity said 2 months ago:

I'm working on learning KiCad + FPGAs, I've been making a little PCB, I can plug into my FPGA board (via a PMOD interface), to drive some WS2812B lighting strips via VHDL.

I've sent the PCB off to a fab, who will do the SMD assembly part too for me :) Will be a couple of weeks before it arrives I think.

I need to work on an SPI interface next in VHDL which will need to interface with BRAM which will act as the 'framebuffer'.

shock said 2 months ago:

I've recently started learning KiCad too. Which fab did you send your PCB to?

anfractuosity said 2 months ago:

I used JLCPCB, it cost around £20 for 5 boards with the assembly (it's definitely cheaper without assembly), my board is pretty simple assembly-wise, a level converter, resistors, capacitors and diodes.

Re. kicad, I played with the push and shove routing feature for my board, which I found really nifty.

aaron-santos said 2 months ago:

I'm porting Rodrigo Pombo's wonderful Build your own React[1] code to Clojure(script). It really helps understand what's going on under the hood. The goal is to replace a half-assed React-like implementation I currently have with something that works much better.

[1] https://pomb.us/build-your-own-react/

johnbellone said 2 months ago:

I’ve been looking for a good real world project that uses Clojure to learn. I’ve only written basic backend services with it but love it.

aaron-santos said 2 months ago:

I got hooked on Overtone and then switched over to hacking on a roguelike in Clojure. It's a fantastic language. :)

johnbellone said 2 months ago:

Protojure is a project I’ve been following that is promising. I need a few hours to write some protobufs and test out a skeleton. But I haven’t done too much frontend development with Clojurescript. Am definitely interested in working on that.

adnauseum said 2 months ago:

I'm continuing to study graph theory and learning Lisp via Structure and Interpretation of Computer Programs (with the original 1986 lectures).

ChicagoBoy11 said 2 months ago:

Lots of joy ahead! Love those lectures.

brutus1213 said 2 months ago:

Are those online somewhere?

snarfy said 2 months ago:

Synthesizers and modular synths.

whitehouse3 said 2 months ago:

I bought Omnisphere and a 25-key MIDI controller yesterday. I wanted for years to learn digital music production, but didn’t because I was busy. This quarantine gave me the chance to dedicate real time to it.

snarfy said 2 months ago:

What production software are you trying? I bought a seinberg audio interface that came with cubase ai, so I've been playing with that. Cubase has come a long way - I remember when it was new software.

Even before Cubase I remember playing with trackers like fast tracker 2, so I also bought a copy of Renoise. If you are a programmer you might like making music with a tracker over a traditional DAW.

whitehouse3 said 2 months ago:

I bought Reaper after using its unlimited free version for years. My background is voiceover and podcast recording and Reaper is good for that. I'm sure it has limits but I haven't reached them yet.

It has a macro interface for scripting and many of their first-class plugins can bee configured with Javascript.

arvinsim said 2 months ago:

Any reason why you chose Omnisphere in particular?

whitehouse3 said 2 months ago:

I like those "Watch me make a beat" videos on YouTube. And the ones I enjoyed the most used Omnisphere for strings/pads.

krat0sprakhar said 2 months ago:

I built an expense tracker app using Flutter a while ago that I've been using for a year. It has really helped me in understanding where my money is going. To build it quick, it uses Google Sheets as a backend and BigQuery for running sql queries over the data. While everything works, it's quite slow so I'm looking at building the API server with rust warp and sqlite to store all transactions.

saha26 said 2 months ago:

How easy are you using flutter to use so far? I have been thinking about learning about flutter for a long time, but still unsure about how much support is there in terms of 3rd party libraries, and whether that can hinder development at some point.

joeyjojo said 2 months ago:

I am learning music production through a course on monthly.com, by Andrew Huang. I'm learning a lot of cool tricks and have made a lot of progress in my music production skills so far.

It is challenging though as I am creating my music on a Synthstrom Deluge instead of a typical DAW. Most of the concepts so far (1 week in) are still applicable although it requires a bit of creativity to apply certain concepts.

raghavankl said 2 months ago:

Learning React Native, being a backend developer I lost in touch with front end development. It is interesting to explore this realm of the stack.

tta said 2 months ago:

I’m reading the Raft paper: https://raft.github.io/raft.pdf

gsjbjt said 2 months ago:

Implementing it is the fun part! You might like going through the Raft lab in MIT's distributed systems course: https://pdos.csail.mit.edu/6.824/labs/lab-raft.html

+ Jon Gjengset's writeup on some of the "gotcha"s: https://thesquareplanet.com/blog/students-guide-to-raft/

fmonteiro said 2 months ago:

Nice, I didn't know that course and I noticed that I can follow along the course, the classes are recorded. Do you think it's something worth investing to someone interested in distributed systems? The only downside is that I can't have my lab exercises validated.

gsjbjt said 2 months ago:

Yeah, it's an excellent course. That is typically the unfortunate downside of self-studying courses, but AFAIK the tests aren't that sophisticated - you can mostly test it yourself just by running the test suite over and over again, making sure that it _really_ works 100% of the time and not just 98% of the time (given the nondeterministic nature of distributed systems failures). This is basically what students would do before submitting their labs, and most people got a full score if they ran it enough times :P

tta said 2 months ago:

This is great, thank you!

epaga said 2 months ago:

I've been learning lots about orbital mechanics and rocket science thanks to Kerbal Space Program. What a sense of accomplishment with each step

* made it to orbit

* flew by the moon

* crash-landed on the moon

* landed on the moon and returned with the stranded astronauts

* landed on Mars (stuck there for now sending back science experiment data)

* flew by Venus + Mercury

* Took a sample of two different asteroids

* Shot a little refueling space station into orbit and successfully docked to it with other ships

epoch_100 said 2 months ago:

I've been spending a lot of my time learning about how to do RegEx at scale. It's a surprisingly fun problem!

The impetus has been a media monitoring side project[0] that I've been trying to get off the ground. I should probably spend more time learning about marketing, but I just keep coming back to RegEx optimization.

[0] https://lensant.com

tuckerpo said 2 months ago:

I bought a used copy of the old dragon compiler book (written by Aho from Bell Labs and some others). Would like to take a crack at a C compiler.

amerkhalid said 2 months ago:

Game dev. Being trapped inside, nothing is better escape than video games. We are watching a lot of TV but there are not many shows or movies that get you jumping off your couch in frustration or excitement like video games do.

So started playing a lot more video games than usual. Got Dreams on PS4 which ignited my childhood dream of making video games.

Now I am playing with Unity, Unreal, Swift, Xamarin, and more.

voodootrucker said 2 months ago:

I've been learning a combination of data analytics / ML and embedded C++ development, and some protocol reverse engineering and python.

It's a lot of fun after spending years in the web to go back to systems work. It's still arbitrary and frustrating some times, but for some reason debugging kernel code seems like more honest work than messing around with webpack config yet again.

hkt said 2 months ago:

I'm deploying all my self hosted stuff to k8s and setting up with what I need to sell to other people. I think I've managed to pick a setup which is going to scale well horizontally which feels pretty good. It's going pretty well so far, will probably write it up and maybe even look at selling accounts after the fact. It has been a fun skills update.

markus_zhang said 2 months ago:

Trying to adapt WFH as our team tends to work overtime and WFH simply compounds it.

On the other hand, trying to figure out what to learn after adaption...

vojtamolda said 2 months ago:
pyr0hu said 2 months ago:

Haven't been able to do some graphics programming with OpenGL so I tried to dust off my knowledge about that and started putting together a simple 3d scene with user inputs, animations, sprites, etc. To increase the fun, I also constrained myself to C99.

I really really like the graphical style of Pokemon Black (3d environment with 2d sprites) so I want to replicate that.

lifeformed said 2 months ago:

I've been reading through Bartosz Milewski's Category Theory for Programmers, and trying to do all the challenge questions.


EduardLev said 2 months ago:

I’m working on this as well. I found a couple of people who posted their solutions online, but some of the questions are tricker than others. Wish there was an answer key!

tombert said 2 months ago:

I decided to learn how to digital paint. Art has always been a blind spot to me, and while I’ve played with Photoshop and Krita before, I’ve never really learned how to do art.

I’ve had an idea for a comic series kicking around in my head; I figure if I really learn how to use a graphics tablet and Krita and some basic and intermediate art skills it won’t hurt a damn thing.

zikani_03 said 2 months ago:

I'm trying to learn Blender for the umpteenth time. Years ago I prefered 3DS Max for 3D modelling and never put serious effort into learning Blender, looking to change that this year esp. with the recent UI/UX changes.

As far as programming is concerned; learning how to build Netty servers and navigating large open source codebases quickly.

herbps10 said 2 months ago:

French. I use Anki for building vocabulary, and practice over Skype. The innerFrench YouTube channel has also been a great resource.

tmaly said 2 months ago:

I am learning how to build a modern computer from parts. I last built one in 2001.

I have been working on a course to teach kids how to learn programming with Scratch. I want to learn more of the Adobe CC suit to add more effects to my videos.

I want to learn how I can improve my remote skills to better work with my team.

rmz said 2 months ago:

* Natural language processing (udacity nanodegree). * Spanish words (duolingo). * Random fields (reading random articles about it :-). * Anonymizing text (side project) * Photography (blogs, videos, and practice https://500px.com/la3lma)

meken said 2 months ago:

I’m taking a Japanese class right now. Thinking about wanting to get to the level where I can play video games in Japanese to learn more. I don’t really play video games anymore because I largely find them a waste of time, but it’s an intriguing way to get back into them. I found a YouTube channel called “game grammar” which is really neat.

dotmanish said 2 months ago:

Is it an online Japanese class? Which one and what has been your experience?

starpilot said 2 months ago:

Data structures & algorithms, for the first time, because I want to transition from being a data scientist to a ML engineer.

wexomania said 2 months ago:

I am currently learning about Greedy Meshing and voxel rendering / editing. I want to make games with my nieces, nephews and younger siblings, and are currently working on a voxel editor / drawing tool, so that they can make their own characters and items for the games without having to learn 3d modeling and animation.

Insanity said 2 months ago:

Since pluralsight is free this month (no affilition), I've decided to take up some machine learning courses on there.

vishnuvis said 2 months ago:

Trying to learn Photoshop.

Also apart from that working on page speed optimization of website which are in wordpress.

Testing on this product page ( https://www.keka.com/hr-software/ ), earlier it was 7sec, now it's 4.

Hopefully can do a bit to bring it down to 2.

wegymoo said 2 months ago:

I'm learning Go, git (and how to contribute to an opensource project/code with other people), also learning more about electricity and specifically the movements of ions. I have trouble finding resources on this though everything seems to be either really beginner level or way to high level for what I am looking for.

p2detar said 2 months ago:

I’ve started getting into Go. Looks good so far. Working on a side project, which is my best way to get into something new.

codegeek said 2 months ago:

Checkout the work of Alex Edwards [0] and his book on Go [1]. Great guy and he even helped me with a consulting project.

[0] https://alexedwards.net

[1] https://lets-go.alexedwards.net/

maxioatic said 2 months ago:

I bought his Let's Go book last week. Pretty good so far and if you're building a web app, I'll throw my recommendation in too.

_____smurf_____ said 2 months ago:

what are your resources to learn the lang?

p2detar said 2 months ago:

I read “Effective Go”[0], but what really helps me is browsing through the sources of various Go projects and libs in Github. I also keep a tab of Go’s packages docs open [1]. And of course there’s StackOverflow. In general I prefer learning from source code rather than books.

0 - https://golang.org/doc/effective_go.html 1 - https://golang.org/pkg/

_spoonman said 2 months ago:

I’m learning go, too. Check this resource out. https://quii.gitbook.io/learn-go-with-tests/

pizza234 said 2 months ago:

Although the question is not directed at me, I've found exercise websites to be extremely valuable. I value learning/gathering experience by reading code, but I find the hands-on approach more stimulating.

My favourite resource right now is exercism.io. Although some tracks have too much of a high students/mentors ratio to be effective/practical in mentored mode (or to activate the mode at all), going through all the exercises (and community solution) is still a very effective way to learn a language (along with a textbook, of course).

Codewars is another interesting idea, however, it's much more grounded on computer science, which is not very well suited to just learning a language.

wegymoo said 2 months ago:

I've been using this https://www.youtube.com/playlist?list=PLVEltXlEeWglGINo25GxV...

It seems like after the pandemic there will be a lot of new gophers

eu said 2 months ago:

Black Hat Go is a good one

prashant93y said 2 months ago:

I am learning Data Structures and Algorithms, and solving problems on LeetCode. The goal is to get selected in FAANG.

pkghost said 2 months ago:

I (quixotically) rolled my own uptime monitor with curl and twilio's CLI, and then wrote a minimal jenkin's clone with a git hook, a little bit of bash, and systemd: github.com/cameron/push-to-systemd.

My current project also involves learning elm and postgraphile, which is shaping up to be a wonderful stack.

jccalhoun said 2 months ago:

I'm (slowly) rewriting a userscript I wrote a few years ago by adding in some niceties. I'm not a programmer so there is a lot of learning going on here. I also got an apple pencil so I'm learning to draw with it and getting back into drawing which I haven't done much of in 20 years.

jamil7 said 2 months ago:

I've been porting parts of a Swift / iOS app to a shared Kotlin Native / Multiplatform library and learning more about Android development, I hope to release an Android version of the my app. I'm also eyeing Flutter and hoping to try it out in the near future.

dnr said 2 months ago:

Tensorflow (v2), numpy, and related stuff for image processing. I kind of ignored the whole deep learning revolution, though I had a very basic understanding of NNs from a long time ago. It's fun to play with, and I'm getting an intuition for what sorts of problems NNs are likely to help with.

paladin314159 said 2 months ago:

Japanese. I took a year of Japanese in college 10 years ago, but never really followed up on it (other than watching anime). I started up again about 6 months ago and have been impressed by the number of online resources that are available now to the extent that self-study is easy (motivation aside).

notjustanymike said 2 months ago:

Engineering manager and tech lead here. Today I made banana bread for the first time and it's delicious!

CalRobert said 2 months ago:


Old school but I haven't found a better ORM for my use case - though I keep thinking there's got to be something like an open-source LookML, which is what I want in the long term.

Also, lime plastering traditional (100+ year old) buildings, and trying to get a fruit orchard going without rabbits eating the trees.

abdullahkhalids said 2 months ago:

Trying to learn quantum machine learning. I am currently a physics professor, but considering moving to industry.

jakecodes said 2 months ago:

I’m taking weekends and evening off so I don’t burn out. I’m working on learning a piano piece by a composer named Kapustin. If you haven’t listen to him I highly suggest him. Since I got my degree in piano performance, I’ve not learned any big pieces and I’m excited that I’m finally doing it.

fastlearner said 2 months ago:

I have been purchasing iOS app templates written in modern Swift with Firebase backend. Reading through the source code and customizing it for a fun project. Since I am already proficient in backend stuff with Google Cloud this lets me quickly learn various things involved in app development.

brainlessdev said 2 months ago:

I'm learning how to build a backend for a web app using TypeORM, GraphQL and Apollo Server. I'm a frontend developer.

Also, I've been toying with OBS Studio to learn how to make more professional video recordings to showcase applications at work, or bug reproductions, documentation, etc.

selfish-duck said 2 months ago:

Hey, I recommend checking out type-graphql and especially Nexus to work with GraphQL on server-side. If you want to go serious about GraphQL I also recommend reading Production-ready GraphQL. I've been working with gql for 4 years now but this book really deepened how I think about modelling my schemas, queries and mutations.

All the best on your learning journey!

brainlessdev said 2 months ago:

Thank you! In fact I have been using type-graphql for this project.

I'll make a note to check out Nexus. Some other contenders to go into my tech stack were Hasura, Prisma and Postgraphile, but I wanted something a little bit closer to the vanilla GraphQL experience...

selfish-duck said 2 months ago:

Agree with you. The more vanilla GraphQL you go in the beginning, the more you'll be able to choose abstraction you want on top of that.

If I had to give you just one tip to design your schema: favor simple queries and mutations that do just one thing instead of trying to generalize your use-cases. For example if you want your client to be able to retrieve your Products by id and by name, instead of going for `product(id: String, name: String)` go for `productById(id: String!)` and `productByName(name: String!)` You'll end up with more fields on Query but the Product type stays the same, the arguments are clearer (just one that is required) and you'll get simpler resolvers. To generalize: forget about REST best practices, think about you queries and mutations as functions and write them with the according best practices you would apply to functions.

Funny thing I noticed about gql is front-end developers are generally more comfortable than back-end ones geting the grasp of it as its DNA is really client-focused.

Sorry for the long reply :)

brainlessdev said 2 months ago:

Indeed, at my company I've been working with GraphQL for a while now (about a year and then something) as a frontend developer, and our main way of communication with the backend was writing out a GraphQL file as a draft of how we imagine the API should turn out.

It's nice!

said 2 months ago:
rolae said 2 months ago:

Refactoring Ruby

I am a UX person, but often dabbled in Ruby on Rails. Currently for the the first time working on a more serious app and now reading the book refactoring ruby, is very illuminating, going through my code again and rereading makes me see many mistakes and possible improvements.

hmert said 2 months ago:

Go + graphsql: we have build https://iban.im and open-sourced https://github.com/monocash/iban.im

maxioatic said 2 months ago:


More specifically, trying to build a static site that has all the indexes of my programming books indexed and searchable using Bleve.

Edit: If anyone has tips on how to extract text from indexes of books that'd be great. Currently thinking of using OpenCV as I'm comfortable with it.

joecasson said 2 months ago:

More about Adobe Premier Pro. I've been doing video editing for a couple of years as a hobby, and I am continually amazed at the depths you can go in video production.

I'm also learning that you can only do so much in post. Sometimes, you just need a different shot.

tjohns said 2 months ago:

I just got my private pilot's license in December, so I'm studying for my instrument rating right now.

(New pilots are restricted to flying in "visual" conditions - clear weather. The instrument rating allows flying in reduced visibility conditions.)

rdc12 said 2 months ago:

Making my way through the Robotics Specialization (Penn Uni series) on Coursera, almost finished the first course on Aerial Robotics.

By the end of the year I hope to have built a autonomous drone, with a custom flight controller (both motor control and sensing).

master_yoda_1 said 2 months ago:

I have to work harder now? I am not sure how people get time to learn in this quarantine?

zebrafish said 2 months ago:

Learning 3D modeling in blender through videos from Grant Abbitt on YouTube. No idea what I'm going to do with that skill, it's just something I've always wanted to learn since Halo: Custom Edition came out on PC.

wozmirek said 2 months ago:

Gluing + painting models and miniatures! I've been bad at manual artistic things always, so I kinda combined my passion for the history of warfare with that thing I'm lacking and... here I am, gluing German tank models :)

darrmit said 2 months ago:

I’m a product manager working on a large distributed platform and spent the weekend trying to deploy the various microservices that make up the platform to a dev machine using Docker. I wasn’t totally successful but had a blast doing it!

DrKabab said 2 months ago:

Learning a lot about CTFs and pentesting, most through tryhackme.com Highly recommend it

Gabriel_Martin said 2 months ago:

Making art with After Effects. If I really get motivated I'll move my experience into doing Interaction design with Lottie and bodymovin, but for now it's just a nice way to blow off steam during this difficult time.

Disruptive_Dave said 2 months ago:

Bathymetry & swells, specifically for surfing. I've been a recreational surfer and getting back into it now, never took the time to learn how waves are formed and all the things that impact how then end up on our shores

jypepin said 2 months ago:

I just built my first mechanical keyboard which I wanted to do for years but never jumped shipped - The soldering scared me. It was easier and more fun than expected!

I also just bought a house and am looking into putting drywall in the garage.

amatecha said 2 months ago:

Nice, I've built a few keyboards now -- first I practiced making a couple "gherkin" keyboards [0] for fun and then an alps64 [1] using some Alps SKCM Cream Damped switches I harvested from a dead Apple Extended Keyboard II. Probably my favorite build!! It gets a lot of comments from coworkers :)

[0] http://www.40percent.club/2016/11/gherkin.html

[1] https://geekhack.org/index.php?topic=69740.0

janderson3 said 2 months ago:

Toki Pona.

It it's a constructed language that has recently hit the front page of HN a couple of times. It's been fun. Helps reorganize your thoughts a little bit and it's good practice for learning a more complicated language.

imdhmd said 2 months ago:

To build a keyboard. /r/mechaniclekeyboards has been a great resource

coupdejarnac said 2 months ago:

I've just found someone to teach me how to play the trumpet. I figure I ought to learn how to play an instrument before I get too much older. I've also been brushing up my Chinese and learning Typescript.

jackhalford said 2 months ago:

Been getting back into physics for the past few months. I've started reading the Landau&Lifschitz books and have been making flashcards out of the problem sets.

I'm also following MITs online math courses to get back up to speed.

status_down said 2 months ago:

I'm learning about solar PV energy systems. This is an awesome subject to learn.However,I'm having a hard time trying to find basic but comprehensive courses online. Any suggestions?

humility said 2 months ago:

Operating Systems, specifically BSD sockets/multi threading.

I'm a JavaScript/Node.Js fanatic, figure it's time for me to up my game and go first principles.

Operating System Concepts by Silbeschatz, Galvin and Gagne to the rescue.

abhchand said 2 months ago:

Just learning more in depth about websockets. It's been around for a while but i've honestly never had the chance to play around with them.

Thinking of putting together a small app as an excuse to play around with websockets

elil17 said 2 months ago:

How to be happier! I'm taking "The Science of Wellbeing" on Coursera

fmonteiro said 2 months ago:

Same. Do you know where I can find notes on the course? I took some notes but I would like to have a summary of everything so I can remember it every once in a while.

Amazing course btw.

DrNuke said 2 months ago:

I was a poet and translator as a young adult and went back to the art to blow off steam https://poeticnopoetry.wordpress.com/

ascendantlogic said 2 months ago:

I've been devops/infra for the last few years and my web dev skills have fallen into disrepair. So I'm doing a side project with Django REST API, Golang Job Runners and React SPA to bring myself back up to par.

mettamage said 2 months ago:

How would you describe the difference between working in devops vs working in web dev?

ascendantlogic said 2 months ago:

My days right now are full of Chef, Terraform, Bash, etc. The coding I am doing is usually scripts and utilities. It's more about glue and automation vs actual product/feature dev.

BenjiWiebe said 2 months ago:

That's the job I want.

focodev said 2 months ago:

I'm entering my junior year in a CS program and just had my internship opportunities rescinded because of the virus. So I'm home taking a docker / K8s course on Udemy as well as a Spring Boot course.

cdiddy2 said 2 months ago:

Aw man, sorry to hear that. Sounds like your making the best of it though!

zaphod420 said 2 months ago:
vagabond_appen said 2 months ago:

I've bee learning- - Korean. I've meaning to learn it for a long time, but due to exams, never been able to do so. - I want to get into Bug Bounties, I have going through hacker101 and TryHackMe rooms.

ddrt said 2 months ago:

Maybe not what I’m learning but I learned a little bit about learning from this ted talk https://youtu.be/5MgBikgcWnY

meagher said 2 months ago:

Vim - documenting my progress on Futureland https://futureland.tv/tmm/vim

hrnnnnnn said 2 months ago:

How to build synthesisers using The Grid in bitwig studio.

It's a modular construction kit for synths that takes advantage of the fact that it's software, rather than trying to ape physical synth modules.

tsuru said 2 months ago:
rayhendricks said 2 months ago:

Right now webdev in general, specifically Angela Yu’s course udemy. Decided that for the flushable future my industry (biotech) is not howling so time to do something more profitable for awhile.

xthetrfd said 2 months ago:

I am trying to improve my web development skills by writing a chat application. I will implement saving messages to the database next.

Also I want to learn something ml-ish probably play with opencv or pytorch.

cognitoMagneto said 2 months ago:

I am trying to learn more about distributed systems.

Any one have a recommendation for a MOOC or a book that could help?

I am specifically looking to understand frameworks such as Dask or Ray and how to build a similar system from scratch.


maxioatic said 2 months ago:

I haven't done much in Dask and never heard of Ray, so might not be applicable directly.

But a general book about distributed systems that I highly recommend and one you'll see often referred to on HN is Designing Data-Intensive Applications. Seriously great book and one I often go back to for fundamentals about distributed systems.

cognitoMagneto said 2 months ago:

I appreciate it, will look up that book

jshc said 2 months ago:

Not sure if this is specific to your ask but I've been enjoying this class. It covers many fundamental concepts.


cognitoMagneto said 2 months ago:

Thanks, will look into this

machiaweliczny said 2 months ago:

I am learning Unity basics with Minecraft tutorial[1]. It's quite nice.

[1] - https://youtu.be/h66IN1Pndd0

hypersundays said 2 months ago:

Currently building something with Svelte.

It's not as breezy as I was hoping...

emmanueloga_ said 2 months ago:

I started before covid, but I'm learning Clojure, XSLT/XQuery/XPath 3.0, SPARQL, RDF* and SHACL. I look forward building a personal knowledge base combining all these.

timrichard said 2 months ago:

I'm learning Go from scratch. I dabbled four years ago, but not much has stuck from then. Also, Final Cut Pro which I've been meaning to do for some time. It's great fun.

rxsel said 2 months ago:

Not very exciting, but I’ve been learning and using vue for a new side project.

The side project itself is essentially a platform to enable post-split parents co-parent effectively.

j-rom said 2 months ago:

Django. I'm building a side project to help learn it. I've been wanting to spend more time on side projects and now seems like a good opportunity to dive into them.

damoday said 2 months ago:

What are you making? I like django, seems easier initially than something like PHP-Laravel

j-rom said 2 months ago:

I'm building a web app that gives suggestions on what activities people can do during quarantine / at home. Getting Django set up and working was pretty straight forward. I think the only difficult part was dealing with the dependencies and the python versions.

AlchemistCamp said 2 months ago:

I've been getting interested in Tailwind CSS recently. I'm also spending some time learning more about tools I already use a lot—Elixir, Postgres, VIM, Git, etc.

jdkee said 2 months ago:

Finally getting around to some discrete mathematics texts and the foundations of mathematics. All driven by an intense desire to understand the Busy Beaver function.

_spoonman said 2 months ago:
wegymoo said 2 months ago:

me too! If you haven't already I highly recommend gophercises https://www.youtube.com/playlist?list=PLVEltXlEeWglGINo25GxV... lots of useable examples

sudhirkhanger said 2 months ago:

I am learning Data Structure and Algorithm and I have also started a book club with a friend where we would be reading at least one chapter of a book every week.

said 2 months ago:
indytechcook said 2 months ago:

Finally getting to doing Ben Eaters 8-bit computer build: https://eater.net/8bit.

cferr said 2 months ago:

I'm learning how effective I can be without physical access to my equipment. Due to the nature of our environment, I'm estimating about 40%.

ineedasername said 2 months ago:

Improving my python skills by implementing programs that utilize an API for an LMS product to better provide analysis of increased use of online learning tools

ronyfadel said 2 months ago:

- Brushing up on my spanish since I moved to Latin America. - I’m learning UX design and Sketch to become better at making my own designs for my software.

husarcik said 2 months ago:

I'm a medical student so I'm currently in a COVID-19 course. Outside that I've decided to work on understanding C/C++ better.

eaguyhn said 2 months ago:

I wanted to do some simple tabulations on COVID19 data so I did some work with Excel and public datasets. Never used Power Query before, so learned that.

mtreis86 said 2 months ago:

I am trying to wrap my head around NP Completeness, so I have been watching some open course lectures, reading Garey and Johnson, and going on many walks.

zitterbewegung said 2 months ago:

Started learning more about AR. Trying to make an app for people to practice social distancing using AR. Basically to visualize how far 1-2m away is .

dullroar said 2 months ago:

dotnet interactive (aka Jupyter notebook with a C# kernel). Been using it along with XPlot.Plotly to chart various CV datasets from JHU, the NYT, etc,

iomcr said 2 months ago:

Crystal Lang - I couldn't find a JS framework I liked that also had good Typescript support, so I took a longshot in building a no-js webapp.

PopeDotNinja said 2 months ago:

I'm writing an HTTP client + server in Elixir. I wanted to see if I could make all of the tests run in parallel using TLS. Working well so far!

erynvorn said 2 months ago:

Python, to catch up with some of my projects. I'd like to do some web searching and work on Kaggle. com where I understand Python is necessary.

dharma1 said 2 months ago:

Outside day to day work, right now I am practicing

-HDR colour grading in Davinci Resolve

-playing cuban congas (that slap is hard)

-designing Flutter apps

-feeling gratitude every day

-how to motivate kids

-growing tomatoes from shop bought tomatoes

jp42 said 2 months ago:

I am working on improving my Signal to Noise ratio. Meaning consistently how to do more and more constructive work than wasting time each day.

aashu_dwivedi said 2 months ago:

How are you going about it?

heyharmon said 2 months ago:

Learning Laravel and using it to build a platform to help manage some of the labor intensive activities at my web design and development agency.

jeanlucas said 2 months ago:

I'm learning Flutter and Golang, hope to use it soon in a real life scenario; but I don't have any projects to use it in yet.

kalyantm said 2 months ago:

I've started to do yoga. Two weeks in and it's going well actually. Also as a FE Developer, the inner workings of JavaScript

mud_dauber said 2 months ago:

DevOps tools. VirtualBox, Vagrant, Ansible & Jenkins.

Good list?

qtcake said 2 months ago:

I've been scoping out new (to me) infrastructure tech. Nomad, Spinnaker, Packer to name a few. It's been very enlightening.

feiss said 2 months ago:

A girl and a baby girl. I'm learning about my patience and how to cope with my anger on limit situations. ️

sh87 said 2 months ago:

I'm learning to say no.

rmdashrfstar said 2 months ago:

Russian, Rust, and Domain-Driven Design. Lots to go! Lots of depth to these three rabbit holes, and only two have some overlap.

coherentpony said 2 months ago:

I'm very much a software person, so I decided to learn more about hardware and the design of circuits. Pretty cool stuff.

hackandtrip said 2 months ago:

Looking at some llvm code, in particular the clang's OpenMP implementation

Getting familiar with OpenMP - MPI (are those used in real life?)

Folcon said 2 months ago:

I'm finally getting around to building a game, I've always been fascinated with paradox style grand strategy games and logistics and management games like openttd.

Speaking with some friends, they encouraged me to give it a go, but start with the goal. Which eventually translated to writing a stock market sim first.

The concept itself is a multiplayer grand strategy style game set in a fantasy style universe. I've got it working on a calendar system like a paradox game, I'm aiming for it to be running continuously with a leaderboard and periodic resets. I very much want player actions to run within the sim context, IE: The player isn't special in any significant way, they control an entity, whether that's a peep or some other in-game entity.

I have a basic demand system for my simulated people working, who buy goods they need from shops local to them and purchasing activity is reported on the market, traders trade against market activity and at present all a player can do is be a trader, running on a Clojure server which uses websockets to update the client.

There's a lot of things I want to do, I've got a map generation prototype that I built after reading some of Amit's amazing articles [1], I've been scouring my old rpg source books GM sections to try and work out what a decent set of pieces plugged together would look like, after all I figure they're supposed to create the illusion of a vibrant world for players, so why not flip through them for ideas? However I'm limiting this a bit because I don't want to get bogged down not building stuff!

I'm presently doing some initial sanity checking, basically trying to work out what are the current performance characteristics of my sim, IE: Does every entity need to be updated on every tick, does that look "nice" from a player's perspective, or create odd artefacts? Also some simple refactoring to just clean stuff up.

The other two problems to solve is keeping everything nicely organised as I really want this to get big in it's interconnected complexity (though perhaps that's a terrible idea), putting together a simple way to monitor the system's running as the game designer.

Keeping scope small and focused is hard, enthusiasm gets you to want to add all sorts of wacky stuff.

All of the above is subject to change if I figure out a better way of doing it =)...

- [1] http://www-cs-students.stanford.edu/~amitp/game-programming/...

pm2222 said 2 months ago:

Clojure, clj tools, figwheel-main, leiningen, sqlite, https, certificates, csrf, reagent, uberjar, smtp. For one app.

ChicagoBoy11 said 2 months ago:

Unity has made all of their premium ed content free for a few months, so trying to absorb as much of it as I can!

leovander said 2 months ago:

Reading Land of Lisp[0].

[0] http://landoflisp.com/

sloaken said 2 months ago:

Loved the website, ordered the book. Any boo that could make a song has got to be good .... right?!? Well at least deserves to have me try.

pvaldes said 2 months ago:

great book...

Quiark said 2 months ago:

Category theory

Quantum Entanglement (lectures by Leonard Susskind at Stanford)

creative building in Minecraft :)

(I already knew how to make sourdough from before)

nsomaru said 2 months ago:

Wordpress. The speed at which clients are requesting new stuff is faster than one-man-Django can keep up

mapandey said 2 months ago:
manish_gill said 2 months ago:

Graph Algorithms and Distributed Systems

ctrager said 2 months ago:

Violin duets. Worst case, I can learn both parts, record one part, and then play the duet with myself.

odyssey7 said 2 months ago:

I'm getting into PureScript and Haskell, with the intention of using them in real-world projects.

lukego said 2 months ago:

Soldering and reworking electronics.

TaylorGood said 2 months ago:

How to run a DTC business. Everything that has tried to stop this has, but I keep pushing forward.

HeyLaughingBoy said 2 months ago:


After a career of mostly embedded systems development, I'm building my first commercial webapp.

rodolphoarruda said 2 months ago:

Infosec history. I'm just entered the PC era, so things tend to be more interesting from now on.

CalRobert said 2 months ago:

Is this purely technical or including the stories, people and politics around it as well?

mmphosis said 2 months ago:

X (x.org) xlib xcb running on Void Linux (development.) Also reading The Animators Survival Kit.

jackfoxy said 2 months ago:

Mineralogy and working my way through Structure and Interpretation of Classical Mechanics

lugermorph said 2 months ago:

how to make fonts :)

rassibassi said 2 months ago:

Friend of mine created a parameterised font for his master thesis. We hooked it up to a face expression sentiment analyser (pre trained DNN). It works in the browser with your webcam, better to use a laptop or pc :)


tim333 said 2 months ago:

Rails. And also presentation skills by recording myself to camera, replaying and repeating.

lunarraid said 2 months ago:

I'm about 40 hours into learning Rails myself, and talk about hitting wall. Learning from home on your own with no mentor is brutal, especially since there is a very specific thing I am trying to do, so the basic TODO apps just don't cut it.

tim333 said 2 months ago:

Rails is actually quite hard in my opinion. I was working through "Getting Started with Rails" where you make a blog with posts they call articles and counting the number of ways the word article pops up in code. I'm up to 14 now, Article, article, articles, Articles @articles, articles_path etc, some of which you type in and some which are magically generated and pluralized, singalized, lower cased or whatever. I guess experienced rails devs know all that stuff backwards but there's a lot of not very obvious things to get your head around.

wolfgang000 said 2 months ago:

c# + asp.net core, after working for 3 (painful)years in java I wanted to try the "Java done right", so far it has been a really pleasant experience, not so nice as Python + Django or Ruby + RoR, but light years ahead of spring boot.

RocketSyntax said 2 months ago:

I'd like to learn Node and Plotly next so that I can build some UIs in JupyterLab 2.0

vladmk said 2 months ago:

Sales and marketing through starting my agency, everything else is secondary in business.

praveenpenumaka said 2 months ago:

I'm learning how xgboost and numpy works internally by implementing them in golang

sonalr said 2 months ago:

Learning a new language, Received a Rust book for my bday so finally get around that.

horizontech-dev said 2 months ago:

Spent the weekend mentoring students who are building projects using React and Python.

duxup said 2 months ago:

Playing with Firebase.

Auth is super handy.

On the other hand I didn't anticipate how wired my brain is for SQL...

awinter-py said 2 months ago:

VR hand tracking SDK

and am reading 50k word TOS (not sure 'learning' is the verb there but *)

JacobiX said 2 months ago:

OCaml, MirageOS and Irmin. Lots of fun, the tooling is better than I was expecting.

KingFelix said 2 months ago:

Multiple ways to build a device that could simulate consciousness / the brain.

billfruit said 2 months ago:

Attempting to learn Latin. Duolingo has a surprisingly good Latin module now.

copacopab said 2 months ago:

Data Science via https://www.codecademy.com/learn/paths/data-science (really want to get good at web scraping!) and Figma via Youtube videos.

Anyone have any fav tutorials on Figma?

tootie said 2 months ago:

GCP and Kubernetes so I am better versed in talking a client out of using it.

stevetursi said 2 months ago:

Spanish, and Category Theory

I can't tell yet which is harder. Both are pretty tough.

Myzis said 2 months ago:

Studying webpack to understand how vue and react manage their packages :)

avip said 2 months ago:


aeden said 2 months ago:

I've been learning about Firebase by building something for fun.

darkbatman said 2 months ago:

I am doing deeplearning.ai. The course seems to be really nice.

cortesoft said 2 months ago:

I am learning that I couldn't cut it as a stay at home parent.

Myzis said 2 months ago:

Studying webpack to understand how react manage their packages :)

devgoth said 2 months ago:

im learning clojure and building a web app. honestly this is by far the coolest language ive used and i love it. im having so much fun.

outside of that im trying to learn polish as well

foxh0und said 2 months ago:

AWS, and finally getting stuck into The Pragmatic Programmer.

macrolime said 2 months ago:

Making hardware/gadgets with arduino and 3d printing.

said 2 months ago:
Medicalidiot said 2 months ago:

I'm studying for the USMLE, so just general medicine.

mister_hn said 2 months ago:

I am learning Ansible from the 30-days free course of RedHat


punchclockhero said 2 months ago:

Expectations: Ansible and Azure DevOps

Reality: armor locations in GTA IV

rochak said 2 months ago:

Hits too close to home

ferchoriverar said 2 months ago:

Design User Interface

kvimal13 said 2 months ago:

Have started learning French language from duolingo.

hudvin said 2 months ago:

Deutsch some ancient history NLP / Deep Learning

antfarm said 2 months ago:

Electric bass and music theory.

state_less said 2 months ago:

I’m trying to free my mind from the usual grind.

konart said 2 months ago:

Drawing. I always wanted to learn how to draw.

Veera_Sivarajan said 2 months ago:

I'm learning Mandarin and Web Development

chaboo said 2 months ago:

UI Design using Figma for my SaaS landing page

bluedevil2k said 2 months ago:

I would recommend just going to a site like themeforest.net and buying a theme you like. I did that, searched for “bootstrap 4” under their landing page, and quickly built a site that would look better than anything I could ever do.

aspencer8111 said 2 months ago:

How is COBAL not the top answer here?!?!?

jimmaswell said 2 months ago:

vue.js for a potential upcoming job requirement. Seems easy enough, but not sure I'd want to use it personally.

zoeey123 said 2 months ago:

Doing MIT 6.006, intro to algorithms

jacobush said 2 months ago:

Learning how to do darkroom printing.

oscbco said 2 months ago:

C++. I want to make Node.js addons

thomasmore said 2 months ago:

Rachmaninoff Piano Concerto no. 2

tunesmith said 2 months ago:

I've been tempted to get back into Concerti, previously I learned the Ravel G major and a movement of Prokofiev #3. I should look into if there's a good way to make a piano-less orchestral track "listen" to what I'm playing and play along.

welcher said 2 months ago:

I'm in my junior year of University. My semester is predominantly General Education requirements. Here's a breakdown of what we're learning about:

- World Civilization I:

At this point in time, the course is following the Cro-Magnon's during the Mesolithic age, specifically around the time that the Neanderthals/Denisovans go extinct and Cro-Magnons evolve into Homo Sapiens Sapiens. This is also around the time that Cro-Magnon-Neanderthal hybrids cross the Beringia Bridge into modern day Alaska. During this time, there's shifts in every single aspect of life on Earth. I've uploaded the most recent lecture notes for those that are interested.


- Astronomy II:

This has been my favorite course this semester (aside from Computer Systems). My professor does an amazing job presenting the concepts and his passion is very apparent as he teaches. Unfortunately, that effect has been greatly reduced, with classes now being online. The other downer about online class is that I won't be able to use the telescopes for lab. Stemming from our previous sections, which covered the Sun, star formation, and star evolution, we're now covering the various models presented throughout time that tried to reason our position within the Milky Way through stargazing. Here's the lecture if you care to watch.


- Technical Writing:

Project 2, that accounts for 30% of my grade, was due Friday. The objective was to create documentation for a program or application. I was having a hard time finding a program, application, package, framework, or language I used, that wasn't already documented to a high enough standard (coincidence? :P). I didn't want to replicate any documentation that already existed so I decided to write an Angular library for creating a vertical or horizontal timeline and documentation for it. I turned it in two hours late, so I most likely will not get credit. Publishing my own code for others to use brought me more joy than I would've imagined.

- Computer Systems I:

The lectures have been covering pipelining, control / data dependencies, forwarding paths, etc. It's extremely fun. In lab, we're programming the Y86-64 ISA using C++.

Besides that stuff and my dance class, where we've learned about the dance throughout the 1900s to present, I've been going through a Udemy course on Kubernetes in preparation for my summer internship and CKA.

happyrock said 2 months ago:


Russelfuture said 2 months ago:

Learning Z80 assembler, matrix algebra, reloading (9mm, .45, etc.), how to draft detailed building plans (something that is detailed enough to get a building permit approved), and market "Technical Analysis" - the study of chart patterns to set buy/sell points.

  This all seems a bit silly, but everything is closed.  Also doing a lot of wood cutting and cleanup in the forest.  We built a custom designed Z80 SBC ( single board computer), with its own Z80MON monitor, and the genius guy I am working with has managed to put the BASIC interpreter into the monitor.  Just got MInipro installed and working on the MACbook, using HomeBrew.  I'm trying to get one of those TL866II pROM programmers - first one ordered got bounced by customs.  We've ordered second one, paid premium to have it couriered.  All the flights are ground-stopped, so it may be a while.   I really like the idea of building a whole computer from parts ordered from Mouser, having all the Monitor and interpreter code, and being able to download the code into A ROM chip, plug it in, and link to the thing with Kermit or Screen session from a Linux box, and have it process matrix data from our AI stuff.  
We live in deep farm country, where self-reliance is pretty hard core. Some farms up the road from ours, are not even on the grid. (They have wind generators and diesel tractors - some even have CNC machines).

We still have good internet access, and we are on-grid, but this whole virus-driven economic meltdown has absolutely confirmed our expectations. We are seriously looking at something that will look like the 1930's now. I worked in 8080 Assembler years ago, and I'd forgotten so much. But I've got two Z80 SBC's working now, one with it's own standalone VT-100 emulator board, and a little 40$ Chinese made VGA screen, which actually works pretty good. I can run that config off two lithium-ion batteries. The missing piece is to be able to use an SD-card. We have a prototype of a much more complex SBC that has a sound chip, and an SD card driver chip. It runs full CP/M, but I like the more simple design, since it does ot use surface mount - real old school.

And there is this ton of other stuff that must be done. We need to be able to reload, and I have all the dies and such for this. We are also doing a bunch of in-house food preparation, since the electricity is still working, and so we are making different types of food that can be easily frozen.

And the price action on the investment portfolios is requiring attention, since we have these predictive algorithms that are offering some insite into where to place trades. The markets are insane, but there are opportunites that do crop up. I realize that most traditional "fundamental" analysis is of little value in this kind of environment, as the automatic algos are running most of the action. We have no chance at all of accessing any "government money", so we are really working our existing systems just to try to bring in some liquidity by quick in and out action. So far this is working, but it is absolutely crazy.

We have non-trading long-term positions on the left side of a tradional barbell, and these are just getting slaughtered. It feels like stories I read about in wartime, those First World War stories. Your whole "picture of the world" falls apart, and suddenly, all that crazy, hacky stuff you thought you would never really need or use (like the gas-mask in the garage) - suddenly, it's the stuff that is keeping you alive, and your economic and technical process actually working.

So, I am going thru notes, and invoking stuff that we documented back in 1987 ( mkt crash), and in 1998 (Russian Default), and of course the 9/11 stuff, which was short and sharp, and followed by a big pop. But the data this time suggests no - too much has been badly damaged already. So we are mainly working on a plan to survive economically, for the next 12 months.

We should be OK, but only because we had these backup Plan B and Plan C's and such. We went to Costco two days ago, and a hundred people were lined up, out into the parking lot, as "social distancing" was being enforced. It's making us pull out the SHTF playbook plans. It could all be summed up as "We are reviewing our strategies for maximum independece, and actively working to enhance our capacity for fully independent action." And I am reviewing all my Linux notes - we have several flavours of Linux boxes, that run the analytic and data management stuff. Need to ensure we can keep on keeping on. So far, it's all ticking along ok, but it's all up to us now. We are learning to be 100% self-supporting, I guess would sum it up. So far, it's working. But it's a new world now. We are all going to need a lot of different skills.

Jahak said 2 months ago:


BWGB said 2 months ago:

how to cut my own hair :$

michaelanckaert said 2 months ago:

Common Lisp and Clojure!

xutopia said 2 months ago:

How to make croissants.

said 2 months ago:
heyrhett said 2 months ago:


Add me on epic: Rhett800cc

lhtr said 2 months ago:

TLA+ and Alloy.

0x262d said 2 months ago:

Marxism In Our Time, an article by Leon Trotsky. A summary of Marx's theory of capitalism, specifically as it pertained to the great depression in the United States, when incredibly high profits and a surging stock market were accompanied by massive inequality and then it all crashed, causing widespread poverty and social unrest despite society's technical and material ability to provide for everyone. I think it will be very relevant soon.


pknerd said 2 months ago:

Go and Rust.

piercebot said 2 months ago:


LouisSayers said 2 months ago:

I'm not working at the moment (and fortunate enough I can continue that for quite a while) and decided I'd just like to do some learning. I have a CS degree from about 12 years back and have worked as a Fullstack dev for the last 10 years, but after looking at https://careers.google.com/how-we-hire/interview/ realise that I'm really not playing at the same level as a what a lot of others are. There are a lot of gaps in my CS knowledge, so I'm working on my knowledge and skills while learning and improving on coding in Go.

As an ENFP I can't just sit and learn one thing at once, so I tend to cycle (with no particular pattern) through the following:

Graph Algorithms A combination of learning on edx.org, and also reading through Tim Roughgardens graph algorithms book. Both are quite technical and take me quite a long time to digest the info. Sometimes I digress to dig deeper into things like Big O notation and the mathematical reasoning behind things like why you can drop constants and lower order terms, but on the whole really enjoying the materials. https://courses.edx.org/courses/course-v1:UCSanDiegoX+ALGS20... https://www.amazon.com.au/Algorithms-Illuminated-Part-Graph-...

Operating Systems Udacity's Intro to Operating Systems course (https://classroom.udacity.com/courses/ud923) Have also downloaded but not yet started reading "Operating Systems Concepts - 10th edition" which you can get from https://www.os-book.com/ I've only just started going through these, but essentially I feel like it's an area I'm lacking in terms of my understanding. When people talk about things like the Linux Kernel - before I really had no real idea of what that actually meant, and I feel like even with a few hours doing the course I am starting to have a much better idea of how things are put together.

Coding interviews I signed up to https://www.techseries.dev/ and have started going through the problems in CoderPro that came along with the expensive $500-$1000 course. The coderpro course is basically just them going through leetcode questions... they even show that that's what they're doing in some of the videos. The main course is OK, but a bit basic. I also have "Grokking the System Design Interview" course and I find that really good for showing how others actually think about and step through system design questions. I'd highly recommend this https://www.educative.io/courses/grokking-the-system-design-.... I also have Cracking the Coding Interview - http://www.crackingthecodinginterview.com/ which I've been using from time to time as well. I highly recommend this book, I find her step by step approach really insightful, and the book covers a crazy amount of material (it's a big book - Gayle Laakmann Mcdowell is a friggin machine).

Go Programming I've been learning Go and using it to code up coding challenges. For Learning Go I've got a hard copy of "The Go Programming Language" which is really good and thorough - https://www.amazon.com.au/Programming-Language-Addison-Wesle...

I also did a course on Udemy https://www.udemy.com/course/go-golang-programming-course which I highly recommend for getting up to speed quickly. I also started going through Todd Mcleod's Go Clinic on Lynda - that was really good, but I didn't want to pay a monthly subscription so put that on pause for now. The GoClinic course is here https://www.lynda.com/Go-tutorials/Code-Clinic-Go/439416-2.h...

accidentalrebel said 2 months ago:

I'm learning how to make a game engine.

I initially was following along with Handmade Hero a series that I have been going back to frequently over the past few years.


The series is great but I wanted something more guided so I am eyeing purchasing Game Coding Complete. It teaches the internals of a game engine and uses DirectX for rendering.


Because deliveries are on lock down in my country the book will have to wait.

So right now I have gone through SDL tutorials (there was a recent update to the LazyFoo SDL tutorial) and am currently finishing OpenGL.

http://lazyfoo.net/tutorials/SDL/index.php https://learnopengl.com/

Finally, I've been checking out repositories of open source game engines and poking around their codes. interesting ones are below:

Godot - Probably a lot of people already know about this one


Pyxel - A fantasy game engine similar to Pico8 written in Python, uses SDL


Wicked Engine - Haven't poked around much with this yet but the screenshots looks gorgeous


Finally here's the video that got me interested in game engines. I saw this years ago but saw it again recently while researching. It's a 2.5d game engine that makes great use of lighting while combining 2d sprites and 3d models.


Here's a second video that shows off a winter weather which boggled my mind when I first saw it.


Sorry for the dump, was excited to share these.

linux_devil said 2 months ago:

Node JS

geoelkh said 2 months ago:


birdyrooster said 2 months ago:


said 2 months ago:
saber6 said 2 months ago:

I’m learning how much time and effort my significant effort puts into keeping our household in order and clean (we have 4 pets - 2 cats 2 dogs).

Anyone who says homemakers don’t work hard is full of shit.

(And we don’t even have kids....)

robbyyy said 2 months ago:

Trying to better grok the potential to use audio (focusing on creative expression) as a medium to navigate smartphone apps and digital properties in general.

bby said 2 months ago:

Learning to increase my sexual prowess via experimentation.

droithomme said 2 months ago:

Growing a lot of food and practicing my marksmanship skills.

jmeister said 2 months ago:

Your comment shows up last and it’s the only one that is funny