Live data from Hacker News

Second Sock Syndrome

sheepamongwolves.net

21–30 of 36 posts

Re: Second Sock Syndrome

#22

I don't know specifically about socks, but with other things, I get through the repetitiveness by optimizing the process, and then each successive output gets quicker or easier. You never do it the best way the first time, and then the game becomes how can I do this with less steps or less effort, what are the tricks? Eventually you get up against the wall and there aren't anymore gains to be made, but at that point…

This maybe a good strategy when you need to churn out a series of items, but what's interesting about the 2nd sock problem is that its very hard to justify the effort in optimizing the process just to make 1 more sock.

Re: Second Sock Syndrome

#23

While this is definitely a problem developers face, many of the solutions in this article only apply to socks. HN, do you have any tips for completing personal projects when they stop being fun?

I'm notorious for having many half-finished personal side projects sitting around; some software, others hardware.

If someone else talks about a similar topic (e.g. a related article gets onto Hacker News, or someone asks "when will it be ready?") then I'm much more motivated to actually finish it.

If I need to find a job, I often try to write up the documentation and post Show HN projects. Occasionally I'll do that anyway, but it's easier when I'm in "writing" mode anyway (if I'm writing cover letters and emails).

The best motivator is to have someone else to work on a project together. Seeing the EspUSB WiFi mouse & keyboard through to production is something I wish I could witness, but I just can't get past the paperwork alone.

Re: Second Sock Syndrome

#24
One related "problem" I've encountered is when the 2nd iteration of something turns out better than the 1st (and the 3rd, 4th, 5th get subsequently better). Perhaps not as big of a problem when you're making stone tiles, or some other output, but it sure does suck to have one good sock and one "eh" sock.

Re: Second Sock Syndrome

#25

In SW development we try to avoid this by building a framework where the second instantiation comes at almost no extra cost. However, we have the problem where we start building the framework and then never solving the original problem...

Very common in game development. Someone focuses too much on the engine but forgets the game. Or focuses too much on the graphics pipeline but forgets gameplay.

A portfolio of completed projects is actually a thing worth having in game dev. Doesn't necessarily mean a project polished to the nth degree but instead, a project that is a cohesive whole. (I'm not saying polish is a bad thing...)

Notes to the pedantic: this doesn't exclude a portfolio of specific examples. eg a set of graphics assets or level assets. Or a graphics library. But the thing needs to have been "done" and not in perpetual "there's this obvious giant hole where this important functionality is missing". And yes I've had success with incomplete projects but they were fully playable just with "programmer art".

Re: Second Sock Syndrome

#26
post #2

Cache/archive/mirror: https://archive.is/jrQ4n#selection-727.0-731.211 In short: > What is the Second Sock Syndrome? > SSS usually refers to the inability to produce complete pairs of socks. Knitting the first sock usually goes quickly. But the second one seems to drag on, never gets completed or even cast on in the first place. It's entirely a knitting blog, but surely this was posted here as it's a problem I know I…

I find the solution is to use my half-finished product, or let someone else use it. The problems they, or I, run into tell me what to complete, or what to add, or to just start over and do it again.

Any time I have doubts about how to finish, what that really means is I need more feedback and take a completely fresh look at my priorities.

Re: Second Sock Syndrome

#27
post #3
post #2

Cache/archive/mirror: https://archive.is/jrQ4n#selection-727.0-731.211 In short: > What is the Second Sock Syndrome? > SSS usually refers to the inability to produce complete pairs of socks. Knitting the first sock usually goes quickly. But the second one seems to drag on, never gets completed or even cast on in the first place. It's entirely a knitting blog, but surely this was posted here as it's a problem I know I…

It seems similar in name only to Second System Effect, from Fred Brooks. The challenge for your second sock is to accurately repeat your process of the first one. The challenge of the second system--where you reimplement something from scratch maybe--is to keep the scope limited but you are trying to depart from the mistakes of the first one. https://adamo.wordpress.com/2019/02/03/the-second-system-eff...

Yeah, but maybe you should be making a second system instead of a second sock.

Re: Second Sock Syndrome

#28
post #3

Earlier quoted context omitted.

It seems similar in name only to Second System Effect, from Fred Brooks. The challenge for your second sock is to accurately repeat your process of the first one. The challenge of the second system--where you reimplement something from scratch maybe--is to keep the scope limited but you are trying to depart from the mistakes of the first one. https://adamo.wordpress.com/2019/02/03/the-second-system-eff...

Yeah, but maybe you should be making a second system instead of a second sock.

[deleted]

Re: Second Sock Syndrome

#29
I've found that often "lacking motivation" is a misinterpretation of "lacking understanding of a fundamental idea." Do you really lack motivation to implement clock recovery in your toy software modem? Or do you not know how digital PLLs work.

IMO knitting is closer to CRUD dev: it's a little challenging but it's mostly just reading/following patterns and counting (although this is coming from someone who crochets and doesn't knit.)

Re: Second Sock Syndrome

#30
post #17
post #9

Earlier quoted context omitted.

You build an abstraction layer, yes: knit.sock(.left) However, your next roadblock would be the framework itself: you throw new tasks at it that it can't handle, you start adding more states and conditionals, more lambdas and/or polymorphism until it gets so ugly you start hating the framework (and yourself) and realize you will never finish it. Time for a big rewrite. One of the essential skills in software engineer…

Knitting is just a monoid in the category of endofunctors. Once you realize that a sock is just a piece of yarn transformed through a series of knots, you can determine that it's topologically equivalent to where you started and you don't need to knit the other sock.

A knit is not a knot.
Post reply on HN