4 ms·
I think the notes at the end bury the lede; in particular: > "I save the most time by just observing that a problem is an adaptation of a common problem. For a
by RodgerTheGreat 4y ago
I think the notes at the end bury the lede; in particular:
> "I save the most time by just observing that a problem is an adaptation of a common problem. For a problem like 2016 day 10, it's just topological sort." This suggests that the contest problems have a bias towards retrieving an existing solution (and adapting it) rather than synthesizing a new solution.
- mrguyorama 4y agoThe fact is, the vast majority of programming IS just dredging up a best solution and modifying it to meet your specifics. Some of the best and still most current algorithms are from like the 60s. That doesn't make neural networks "smart", and instead says more about our profession and how terrible we in general are at it.
- p-e-w 4y ago> and instead says more about our profession and how terrible we in general are at it. I'm well aware that belittling one's own industry is part of contemporary software engineering culture, but for the love of all that is holy, I've never understood it. A few decades ago, "software engineering" didn't exist. Today, it's a hair's breadth from creating an artificial being. That's closer to magic and alchemy than to building rockets and bridges. It just blows my mind that humans have achieved this, and it bores and saddens me to be surrounded by engineers who keep regurgitating "everything sucks" memes.
- urthor 4y agoA very good point. People trivialize the progress in this progression, because it's normalized. And yet, the incredible progress in the last 5-10 years is absolutely stunning. Compared to the other "recognized professions," the progress in how software is developed is beyond stunning. The actual practice of law/medicine/etcetera is remarkably static. Regardless, to most, "what we have now is never enough."
- p-e-w 4y agoIt goes far beyond trivializing. People actively downplay, belittle, and ridicule the accomplishments of software engineering. And on a thread discussing an achievement so utterly incredible that few would have thought it possible 10 years ago. Imagine people watching the James Webb Space Telescope being launched, and saying "modern aerospace engineers are terrible". That's what is happening here. Personally, I find it distasteful and demeaning. It's one of several reasons why I cannot stomach the culture associated with software engineering anymore. The fact that this is happening so frequently on HN speaks volumes. I doubt that equivalent statements, made about spaceflight or medicine, would be tolerated in this forum.
- zarzavat 4y agoMany programmers seem to have pathological humility. Being humble is good, it makes you aware of your faults and areas of improvement. Yet that's only half of it. We also have to be aware of our successes so that we know what we should be doing. Programmers often look up to civil engineers. They imagine that if we built software like we built bridges, it would be better. Civil engineering uses the "waterfall" method. You state your requirements, design the thing, build it, and test it. But we have tried this for software and it just doesn't work. We can never anticipate all the faults or design flaws in advance. So we switched to iterative development with very short cycle times. You can't do iterative development on a bridge, so we've already diverged. Software is fundamentally different to anything that has ever existed. Computers are now writing code, something they couldn't do two years ago. There has been a steady increase in volatility over the previous decades. Attempting to impose rules and structure during a period of volatility is futile. The 2nd Cambrian is starting, enjoy the ride.
- rep_lodsb 4y agoYes, software is fundamentally different compared to building physical stuff. It's like having the ability to arrange individual atoms into any shape, and replicate that structure in whatever quantity desired. And then completely filling the landscape with bridges constructed out of Lego bricks. They say it's good enough, sure we could theoretically do something better, but nobody has the time for that. And anyway, if bridges lasted forever or we needed less of them, there would no longer be such a demand for engineers!
- p-e-w 4y agoIt's fascinating and revolting at the same time how the essence of your comment is once again the "everything sucks" garbage. There are billions of lines of top-quality code in existence, and millions of lines that should be counted among humanity's great works of art, but no, it's all "Lego bricks". Most artists don't produce anything remotely like Michelangelo or Picasso, yet Michelangelo and Picasso are what people think of when they hear the word "art". No one says "art is so terrible, just stick figure drawings everywhere". The perception of software engineering reflected in your comment is not grounded in reality but in culture. An ultimately destructive culture of negativity and self-deprecation. And I'm so fucking tired of it that I wish I had chosen a different profession.
- r3trohack3r 4y agoI don’t think it’s just programming p-e-w, I see this mentality everywhere. Our generation had inherited a world our ancestors could only dream of. Yet it seems folks spend more time comparing us to a fictitious utopic state and picking apart how we don’t measure up than they do appreciating how far we’ve come from our real past. What humans have done in a few hundred years is amazing. We are building a more inclusive, equitable, and just world. We are saving this planet from a guaranteed complete extinction event, self-identifying when our species is breaking natural cycles in our ecosystems, and going to war against death (banking serious wins). Compared to the species in second place (whatever you pick) humans are absolutely killing it. I’m proud to be a member of our species and I’m excited about the world we our gifting to the next generation.
- p-e-w 4y ago> I see this mentality everywhere. Really? People absolutely worship hardware engineers who work on projects like the LHC, the ISS, or the JWST. Or even on much more mundane things: "Wow, you design bridges? Such important work!" And if you're not ready to accept that medical researchers are second in status only to God Himself, then God Himself won't be able to help you. But software engineering? You mean those geeks who develop better ad targeting systems? What did they ever do (other than connect five billion people and revolutionize how every industry on the planet functions)? The really sad thing is that this attitude is shared by many software engineers themselves. I couldn't care less about what the "man on the street" thinks about a profession that he can't begin to comprehend. But watching this self-disdain coming from my own colleagues really hurts me.
- sumeno 4y ago> Today, it's a hair's breadth from creating an artificial being. In the same way my dog is a hairs breadth from driving a car
- dan_mctree 4y agoIn just these decades, our software has already surpassed the ability of dogs to drive cars. And that despite the fact that dogs are a whole lot closer to humans than machines are to humans