TE
科技回声
首页24小时热榜最新最佳问答展示工作
GitHubTwitter
首页

科技回声

基于 Next.js 构建的科技新闻平台,提供全球科技新闻和讨论内容。

GitHubTwitter

首页

首页最新最佳问答展示工作

资源链接

HackerNews API原版 HackerNewsNext.js

© 2025 科技回声. 版权所有。

My 20 year career is technical debt or deprecated

579 点作者 spo81rty将近 2 年前

121 条评论

TacticalCoder将近 2 年前
&gt; My entire career is now technical debt, or the code has been deprecated.<p>My fellow dev often laugh when I tell them that instead of looking at all the long dead techs that are not useful to me anymore, my way to feel good is to look back at all the long dead techs <i>that I didn&#x27;t bother to learn</i>.<p>And, geez, is the graveyard huge.<p>&gt; Java Applets were also a big thing once upon a time. They were slow, and having the correct version of Java installed on your computer was always a mess.<p>Java applets were never that big. They didn&#x27;t work very well (for the reason you mention) and weren&#x27;t ubiquitous. They also nearly all looked like shit.<p>But Java isn&#x27;t disappearing anytime soon. Java is huge and it&#x27;ll have a legacy dwarfing COBOL big big times. Many may not find Java sexy but the JVM is one heck of a serious piece of tech, with amazing tooling available.<p>And most devs hating on Java are using an IDE written mainly in Java (all the JetBrains ones): the irony of that one gives me the giggles.<p>Did anyone in the mid to late nineties &#x2F; early 2000s really discover Java and Java applets and thought: <i>&quot;Java applets is the tech that&#x27;ll catch on, I&#x27;ll invest in that&quot;</i> and <i>not</i> invest in Java itself? To me Java was the obvious winner (not that it was that great but it was clear to me Sun was on to something). And, well, compared to the other dead tech, at least if you learned Java applets you got to learn Java too so it&#x27;s not all lost.
评论 #35959333 未加载
评论 #35959289 未加载
评论 #35959248 未加载
评论 #35959420 未加载
评论 #35958994 未加载
评论 #35961772 未加载
评论 #35962609 未加载
评论 #35967055 未加载
评论 #35959119 未加载
评论 #35963537 未加载
评论 #35959949 未加载
评论 #35971389 未加载
评论 #35962553 未加载
评论 #35959896 未加载
评论 #35963503 未加载
评论 #35961223 未加载
评论 #35960538 未加载
评论 #35959081 未加载
评论 #36001970 未加载
评论 #35961721 未加载
评论 #35967728 未加载
评论 #35959180 未加载
评论 #35961584 未加载
评论 #35959593 未加载
评论 #35967506 未加载
评论 #35959632 未加载
评论 #35961395 未加载
评论 #35958942 未加载
评论 #35959199 未加载
MartinMcGirk将近 2 年前
I feel like this is heavily connected with the idea of legacy. I grew up in Scotland, and lots of the buildings, culture, etc, have been around for hundreds of years. It would be nice to feel like something I was building would last as long and outlive me. It doesn’t though.<p>Sometimes I think that this is just the nature of software development. Most of the stuff I build is built to solve an immediate business problem. It probably lasts 5&#x2F;10 years and then someone rewrites it in a new language, or more often the task isn’t relevant anymore so the code gets deleted.<p>I find myself thinking that maybe if I’d been in civil engineering or something then I’d be building stuff that lasts, but speaking to people who’ve worked a long time in construction has taught me that it’s the same there. Most of the buildings that go up, come down again in a few decades once regulations&#x2F;fashions change or the new owner of the site wants something else.<p>Every so often something like a Cathedral gets built, and those get built to last. But most people don’t get to work on those. If there’s a software equivalent of a Cathedral then I still haven’t found it.
评论 #35957414 未加载
评论 #35958114 未加载
评论 #35957342 未加载
评论 #35957411 未加载
评论 #35958106 未加载
评论 #35957870 未加载
评论 #35959007 未加载
评论 #35957678 未加载
评论 #35958390 未加载
评论 #35959104 未加载
评论 #35960294 未加载
评论 #35962018 未加载
评论 #35959808 未加载
评论 #35962540 未加载
评论 #35959102 未加载
评论 #35957307 未加载
评论 #35958983 未加载
ThePhysicist将近 2 年前
I think it&#x27;s normal. Some systems I&#x27;ve built were quite sticky in the sense that they started as prototypes to be scrapped once we figure out the &quot;real&quot; system architecture, and 8 years later they&#x27;re still in use and integrated into dozens of business processes, so hard to replace.<p>In general, looking back at old code I wrote it seems my solutions were better when I was more naive &#x2F; less experienced, as I would often go for the immediately obvious and simple solution (which is the right one in 90 % of cases). Working many years in software development and reading HN seems to have made me more insecure regarding software, as I tend to over-engineer systems and constantly doubt &#x2F; second-guess my technical decisions. So one thing I&#x27;m actively trying to do is to go back to using simpler approaches again, and caring less about perfect code.
评论 #35958582 未加载
评论 #35959598 未加载
评论 #35958834 未加载
评论 #35960689 未加载
评论 #35962155 未加载
评论 #35958247 未加载
ilyt将近 2 年前
That&#x27;s like calling a chair you built 10 years ago &quot;technical debt&quot; because it can eventually break.<p>No, it&#x27;s just a fucking product you made. The fact it has to be maintained doesn&#x27;t mean it is &quot;debt&quot;, it&#x27;s just like any other asset.<p>You don&#x27;t get to your car and think &quot;that&#x27;s technical debt&quot;. There is nothing technical about it. It&#x27;s a tool with maintenance needs.<p>The difference is <i>choosing</i> worse now to get it faster, that&#x27;s technical debt.
评论 #35960616 未加载
评论 #35966140 未加载
评论 #35985276 未加载
评论 #35960835 未加载
评论 #35960429 未加载
评论 #35961715 未加载
评论 #35960800 未加载
FrustratedMonky将近 2 年前
Everyone one that has counter examples thinking they prove the opposite, are just not waiting long enough. All the kids think they will be young forever. Can&#x27;t blame MS for new JS libraries every month, or a new language released every month. This web site is dedicated to people showing off things they created, which replace something that turns into debt, and in turn also become flavor of the month.<p>Yes, biased old man that saw 30 years of code get replaced with the latest &quot;thing that kind of works like the old thing, but not really as good, but we have to do it to keep up with technology or we&#x27;ll have debt&quot;. I&#x27;ve seen old VB6 apps fulfill a business need just as well as anything written in a full LAMP stack that takes a team to implement. (not that I&#x27;d ever use VB6, but hey, it did a job).<p>Take me out back of the shed and end it quick while I&#x27;m hunched over programming something cool.
评论 #35958229 未加载
评论 #35958645 未加载
评论 #35961798 未加载
评论 #35963770 未加载
评论 #35958804 未加载
edejong将近 2 年前
As I think about all the technologies that have come and gone, it&#x27;s good to find some sturdy rocks as well. Here are some techs that withstood the test of time in my personal journey:<p>* Simple, but reliable file formats: My old photos collection is 25 years old (jpeg) and I still look at them occasionally.<p>* My influxdb&#x2F;grafana&#x2F;openhab setup is now 8 years old and has been operational with only minimal hickups.<p>* Some home automation scripts I wrote have endured for 8 years now.<p>* My Linux&#x2F;Unix knowledge is 26 years old (although much has changed since Slackware).<p>* My C and C++ programming language knowledge is 28 years old (although I rarely use it anymore, because of Rust). Occasionally it is useful during debugging performance problems in kernels.<p>* My knowledge of distributed systems (stuff like leader election, distributed and centralised algorithms) is 15 years old. It is still very relevant to understand both existing systems and to evaluate new systems.<p>It is crucial to distinguish the knowledge that stands the test of time from the fleeting trends. And finally then there are the non-technical skills, which pay off even more. Effective communication, negotiation skills, organisational finesse, inspirational leadership, adept management... These are the true constants that support us during our professional life.
评论 #35973582 未加载
richardw将近 2 年前
One company I worked at had heavy SQL Server stored procs. I was pretty dismissive initially (&quot;don&#x27;t put business logic in the database layer!&quot;) but grew to understand that really those were the gold. The first versions were written in 1997 and by the time I arrived that code was bulletproof. There were about 4 UI technologies over 20+ years (VB, ASP, Forms + asp.net), but the procs were the same shape with thousands of edits for edge cases. Changing UX for the new hotness was massively de-risked and faster because the procs were solid.<p>CTO&#x27;s change. They started replacing it with a &quot;proper&quot; ERP system around the time I left and it&#x27;s been nearly 6 years of pain. Joel spaketh: <a href="https:&#x2F;&#x2F;www.joelonsoftware.com&#x2F;2000&#x2F;04&#x2F;06&#x2F;things-you-should-never-do-part-i&#x2F;" rel="nofollow">https:&#x2F;&#x2F;www.joelonsoftware.com&#x2F;2000&#x2F;04&#x2F;06&#x2F;things-you-should-...</a><p>(As usual: of course you can break the rule, but first deeply understand the risk you&#x27;re taking.)
评论 #35958842 未加载
评论 #35958289 未加载
photochemsyn将近 2 年前
Interesting how C programming has survived that entire time period in the operating system and embedded worlds, although the spread of multicore hardware running lots of threads in parallel has also led to many changes (but even those changes were beginning to be implemented 20 years ago).<p>20 years from now, C will probably still be a core language in its niche.
评论 #35957165 未加载
评论 #35957355 未加载
评论 #35957415 未加载
评论 #35957147 未加载
评论 #35957434 未加载
评论 #35957159 未加载
tlocke将近 2 年前
Ozymandias By Percy Bysshe Shelley<p><pre><code> I met a traveller from an antique land, Who said—“Two vast and trunkless legs of stone Stand in the desert. . . . Near them, on the sand, Half sunk a shattered visage lies, whose frown, And wrinkled lip, and sneer of cold command, Tell that its sculptor well those passions read Which yet survive, stamped on these lifeless things, The hand that mocked them, and the heart that fed; And on the pedestal, these words appear: My name is Ozymandias, King of Kings; Look on my Works, ye Mighty, and despair! Nothing beside remains. Round the decay Of that colossal Wreck, boundless and bare The lone and level sands stretch far away.”</code></pre>
评论 #35959255 未加载
jraph将近 2 年前
That&#x27;s fine. We build code for issues that are here and now. Like most jobs: they answer immediate needs.<p>The small amount of code that&#x27;s useful for years or decades needs to be built on a stable foundation and with few dependencies. This probably matters a lot more than the code being a bit messy. It should require as little maintenance as possible.<p>I have two pieces of PHP code I wrote more than 10 years ago, in PHP 5.1, that I still use. Both are messy, one is outright horrible, but they have no dependencies (the horrible one optionally depends on GeSHi, but there&#x27;s a runtime check for its presence and has a &quot;degraded&quot; mode for when it&#x27;s not there). They work and are relatively bug-free (the horrible one in particular is battle-tested). I didn&#x27;t have much to do to run them on PHP 8.2. A few superficial fixes that were actual issues (and took half an hour to fix). By the way, I can&#x27;t figure out how PHP 5 was even able to run this code. You could have mandatory parameters after ones with default values. Yuk.
评论 #35959828 未加载
评论 #35960151 未加载
hedora将近 2 年前
The fun thing is that, until CS slows down, stuff gets better so fast that we get to reimplement the same thing, but 10x better every 5 years or so.<p>First I wrote single threaded code code with automatic memory management, then single threaded synchronous with manual memory management, then synchronous multi-threaded, then async, and then async lock free.<p>Now I am writing async lock free, and the compiler is helping me prove it is data-race-free and memory safe.<p>Each time I rewrite this stuff, someone hands me 6-7 figures. This is awesome.
评论 #35957154 未加载
评论 #35957100 未加载
评论 #35958309 未加载
评论 #35958236 未加载
评论 #35958537 未加载
评论 #35959620 未加载
评论 #35959049 未加载
UncleOxidant将近 2 年前
All of our work is ephemeral. Software development is just more ephemeral than most work. 40 years ago when I first got into this biz I didn&#x27;t notice this. Now I notice ephemerality everywhere. You need to make peace with it. The things you&#x27;re working on now probably won&#x27;t be used or useful in 5 years. An architect can drive by a building they designed and take pride in that building for decades... but even that building will eventually come down. It just happens a lot faster in tech.
评论 #35962837 未加载
peteforde将近 2 年前
It&#x27;s so weird that you&#x27;d even consider putting Rails in the same category as FoxPro, even as a theoretical.<p>Rails is kicking ass. A huge number of people are coming back from bloated JS frameworks to realize that Rails just keeps getting better every year.<p>Hotwire and similar technologies make the argument for SPAs look very questionable.<p>And let&#x27;s not forget where we are; over 75% of the raw gross value created by YC-backed companies use Rails. So it seems like Rails is only popular with successful startups.
评论 #35959858 未加载
smackeyacky将近 2 年前
I am somewhat amazed at the list of tech from that article, it&#x27;s like he has a magical knack for picking dead ends.<p>C was the 2nd language I learned and I&#x27;m still using it. The big surprise for me has been javascript - it&#x27;s so...bad it became good or at least ubiquitous.
评论 #35958242 未加载
评论 #35958134 未加载
评论 #35960664 未加载
评论 #35958341 未加载
chasil将近 2 年前
Brian Kenighan wistfully removed the lex&#x2F;yacc parser in the OneTrueAwk many years ago, and replaced it with a custom parser (I believe for performance reasons). The OneTrueAwk remains the standard awk in BSD, renewed, but not replaced. I don&#x27;t think it&#x27;s going anywhere.<p>The POSIX standards, flawed as they may be, have incredible staying power. These standards run our phones and embedded, supercomputers, current Apple workstations, game consoles, and are significant in many other places.<p>Microsoft itself implemented POSIX in Windows from the beginning (likely recognizing it&#x27;s importance as the former vendor of Xenix), and while this has waxed and waned, running the &quot;wsl.exe -l -o&quot; command on modern Windows will catalog Ubuntu, Kali, and Oracle Linux that are not Linux, but serviced by the Windows kernel&#x27;s POSIX layer under WSL1.<p>Applications that implement or greatly enhance POSIX have <i>staying power</i>.<p>Those who seek code longevity would do well to study it.
评论 #35958127 未加载
评论 #35958735 未加载
评论 #35958207 未加载
YZF将近 2 年前
There is plenty of code I&#x27;ve written that&#x27;s still out there doing useful things.<p>I&#x27;m sure some not insignificant parts of Windows, Linux, tools, libraries, browsers etc. etc. are fairly old code that just keeps working .. perhaps with fixes and improvements.<p>Good code lasts a long time. Technical debt is something you are continuously paying &quot;interest&quot; on. Just like any debt, sometimes it&#x27;s a good thing and sometimes it&#x27;s a bad thing.
评论 #35957105 未加载
评论 #35957481 未加载
rco8786将近 2 年前
Agree with the premise. I currently work with a PM that is simply <i>terrified</i> of introducing <i>any</i> technical debt or &quot;throwaway work&quot;. Mind you, he isn&#x27;t writing or maintaining any of the code himself. It&#x27;s like pulling teeth getting him to realize that we have to ship some product in order to learn, and some of what we will learn will be what is WRONG with our product and needs to change (aka throwaway work) and that every codebase eventually becomes a legacy codebase (aka technical debt).<p>I think we&#x27;ve done ourselves a very big disservice as an industry by focusing on this boogeyman.
satisfice将近 2 年前
A better way to think about technical debt is to understand that what WAS technical debt-- the residual tasks necessary to make something reasonably inexpensive to maintain and improve that come from kludging things together under time pressure-- gets FORGIVEN when the whole technology on which a product is based becomes obsolete.<p>Products don&#x27;t become technical debt, they merely depreciate along with any aassociated technical debt. This is why I don&#x27;t like the term technical debt: it implies something that must be paid back. But you don&#x27;t have to pay back the &quot;debt&quot; on product that will be completely replaced anyway.<p>When I have a long list of todo items to perfect my work for a client, and then they run out of money for the whole project and end my contract. I don&#x27;t say &quot;oh no, now I&#x27;ll never dot those i&#x27;s and cross those t&#x27;s!&quot; I say &quot;yay, I will cross everything off my todo list forever.&quot;
nologic01将近 2 年前
In the future there won&#x27;t be any technical debt. You were lucky to live early.<p>Code, most code, will eventually turn into some sort of sanitised applied maths corpus (with a heavy overlay of &quot;AI&quot; analytical tools).<p>In applied mathematics you have cultural obsolescence (stuff that we no longer find interesting or relevant, like an asymptotic formula for the Airy function [0]) but the corpus is intrinsically add-only. Once something is solved it does not have be solved again. Its essence is eternal, so to speak.<p>Think about code development in such as mature state. It will mostly work by pulling together (using AI prompts) logical units from the future version of Rosetta [1].<p>When we get to that stage it will be hard to add something truly new. Just like it takes a long incubation and a PhD to add some marginal new thing to applied mathematics, it will take effectively trained applied mathematicians to add something minor to the evolving code corpus.<p>Coding for the common folk will be mostly compositing. It might be productive and even fun, but not quite the same.<p>We lived through a period of widespread democratization of development. Cherish the freedom of reinventing the wheel in countless flawed ways :-)<p>[0] <a href="https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Airy_function" rel="nofollow">https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Airy_function</a><p>[1] <a href="https:&#x2F;&#x2F;rosettacode.org&#x2F;wiki&#x2F;Rosetta_Code" rel="nofollow">https:&#x2F;&#x2F;rosettacode.org&#x2F;wiki&#x2F;Rosetta_Code</a>
评论 #35962919 未加载
mark_l_watson将近 2 年前
I don’t disagree with the author, but I don’t worry much about old tech that is no longer useful.<p>I have worked in the field of AI for 40 years, and we have had a huge trash heap of technologies that ended up being useless except for lessons learned from failure.<p>I have always been motivated to work for just two reasons: supporting myself and my family, and learning and using new tech. The great fun is in learning new things. That said, sometimes there is good short term work supporting old tech that companies still want to use.
评论 #35962789 未加载
QuadrupleA将近 2 年前
<a href="https:&#x2F;&#x2F;phrasegenerator.com&#x2F;" rel="nofollow">https:&#x2F;&#x2F;phrasegenerator.com&#x2F;</a> , one of my first web projects, has survived since 1996 (almost 30 years, wow). It&#x27;s definitely required a few &quot;tech debt collections&quot; - the original was in ColdFusion, the hot stuff of the time. Then an asp.net &#x2F; xml phase when that was cool. Now hopefully a boundless future of stability and modernity with python and JavaScript. At least until the world sunsets any pre-4 python versions, and browser JavaScript is thrown away in favor of pure WASM. But seeing as we still support the &lt;font&gt; tag, I&#x27;ve got some time ...
评论 #35958314 未加载
RalfWausE将近 2 年前
The company i work for is using a C64 mainboard for controling some production equipment... and there are ABSOLUTELY no plans to move to anything different. Is this system deprecated from a technological standpoint? Yes, absolutely. But on the other hand it is a super stable solution that will work tomorrow in the same way as it has worked the last 30 years (and with the whole retro computing scene around spare parts will be no big issue in the forseeable future).
评论 #35958901 未加载
carl_sandland将近 2 年前
Maybe implementations have much less value than has been assumed and paid for by stakeholders over the decades. If code is a throw-away implementation detail of some model&#x2F;abstraction then why are we getting paid so much money again? Really makes me worry about generative AI approaches; just as well there is no universal very high level modelling language everyone loves yet. I think this is why working on games is nice; it&#x27;s not technical debt it&#x27;s just a toy, maybe everything is.<p>Our cathedrals are surely [L,U]inux and the C programming language, HTML has done pretty well too.
评论 #35958288 未加载
amelius将近 2 年前
&quot;Your grandfather was a brilliant man and his peers all praised him. Go ask him about it!&quot;<p>&quot;Grandfather, what did you spend your life on?&quot;<p>&quot;I made people click ads. Don&#x27;t worry, it&#x27;s all technical debt or deprecated now ...&quot;
评论 #35965595 未加载
评论 #35960437 未加载
agentultra将近 2 年前
That&#x27;s a lot of fad-based tech in this article but you do what you have to do. The first language I used professionally is not the same language I use today. However any one of them certainly could have become &quot;fad&quot; tech... except maybe C, Lisp, and Haskell; those ones seem to be built on foundations (discovered or invented) that are repeated, rediscovered, or reinvented but rarely change.<p>I generally think of &quot;fad&quot; tech as frameworks and ecosystems that are built around a commercial interest or novel idea. They often fail to overcome network effects. And this leads them into obscurity to await deprecation.<p>There&#x27;s a lot of churn that happens in the frothy red waters of &quot;trying to make programming easier&#x2F;faster&#x2F;accessible-to-non-programmers&quot;.<p>And we&#x27;re not so great at maintaining our legacy, the state of the art, the pedagogy and history of our science. Over a twenty-plus year career I&#x27;ve seen people re-invent solutions to the same problems over and over. Each time it&#x27;s a revolution. You don&#x27;t want to dishearten the young and eager but at the same time seeing them run into the same problems, learning the same conclusions, etc means we&#x27;ve not been doing a great job at teaching and mentoring and all that.
hgs3将近 2 年前
Don&#x27;t define your career by the technologies you&#x27;ve used, but rather by the problems you&#x27;ve solved and the knowledge and experience you&#x27;ve acquired.
29athrowaway将近 2 年前
What do all these things have in common?<p>MS Visual Basic 6, MS ActiveX, MS Silverlight, MS Visual Foxpro, MS C# .NET Compact Framework, MS ASP.NET WebForms, MS ASP.NET MVC, MS Windows Communication Foundation...<p>I think there common is a theme there. But shhh, don&#x27;t tell him.
评论 #35957369 未加载
评论 #35957372 未加载
评论 #35957692 未加载
评论 #35957304 未加载
评论 #35960546 未加载
jgb1984将近 2 年前
I guess I was lucky: I started 15 years ago doing web development using python and django on linux, which is still my toolset today ;)
评论 #35958576 未加载
irrational将近 2 年前
I’ve worked on the same website for 20+ years. Recently we were informed that the site was being shutdown and we would be reassigned to other teams. On the one hand, as long as they are still paying my exceedingly well, do I really care what I am working on? On the other hand, it is a bit painful seeing 20+ years worth of work being deleted.
评论 #35957419 未加载
NikhilVerma将近 2 年前
I&#x27;ve been programming professionally close to 16 years. Here is what I can remember of my code:<p># Job 1 (3 yrs)<p><pre><code> - Worked on around three products, all shut down, code probably lives in some SVN archive. - Learnt advanced JS, PHP, MySQL, Photoshop, jQuery etc (skills mostly relevant) </code></pre> # Job 2 (1.6 years)<p><pre><code> - Project never launched, code never saw the light of the day. Probably lives in some Git archive. - Learnt a few in-house frameworks (irrelevant) but also leant Git (relevant) </code></pre> # Job 3 (8.5 years)<p><pre><code> - Worked on several products, the biggest one is still active and seeing millions of users weekly. Rest got shut down and live in a Git repo. - Learnt about some inhouse frameworks (irrelevant). React, React Native (skills still relevant) </code></pre> # Job 4 (2 years)<p><pre><code> - Actively working - Learnt Vue (skills still relevant)</code></pre>
secretsatan将近 2 年前
From the article &quot;Swift is another excellent example of how fast development tools change. As soon as Apple released Swift, it was hard to justify writing code in Objective C anymore. I am sure there are some use cases where it is still needed. But Swift is significantly easier to develop and a major evolutionary step forward.<p>I would argue that any apps written in Objective C are probably technical debt now&quot;<p>I switched to Swift a few years ago after many years of obj-c, at first I was reluctant as there were still many things I liked about obj-c but Swift won me over. Thought I would never touch obj-c much until I had to integrate a cpp library, I can&#x27;t believe how much I forgot in such a short time. It was interesting to find out how to structure the obj-c code to translate nicely to swift though.
kragen将近 2 年前
a thing most of these have in common is that they&#x27;re proprietary, so the users are dependent on the companies that own them for enhancements, bug fixes, and ports to new platforms. this is a recipe for wasting your time<p>visual basic, asp, coldfusion, foxpro, activex, flash, and silverlight, windows ce, asp.net, webforms? proprietary, proprietary, proprietary, proprietary, proprietary, proprietary, proprietary, and proprietary<p>and mostly pretty dead as a result<p>how about the non-proprietary things in the list? html, css, js, fortran, java, ruby, and rails are all just about as alive as they were 10 or 20 years ago, if not more so, except that rails didn&#x27;t exist then<p>the exceptions are perl, objective-c, and the js frameworks. perl, ember, and backbone aren&#x27;t going to disappear anytime soon but they will likely continue to stagnate. but unlike silverlight or windows ce, you can probably run your perl and backbone and angular and react and swift code 10 or 20 or 30 years from now on whatever platform people like then<p>unless the platform is centrally controlled by an owner who forbids it, so try to avoid platforms like that<p>(java applets were already dead 20 years ago, and soap sucked from the beginning, so these examples are out of place)<p>there <i>is</i> certain knowledge with a very limited half-life. but hopefully you aren&#x27;t spending most of your time learning react apis or wasm instructions or editor keystrokes or chromium bugs, but rather general principles that transfer across domains. algorithms, reasoning, type theory, math, writing skills, hierarchical decomposition, scientific debugging, generative testing, heuristic search, that kind of thing. a lot of that stuff goes back before computing<p>and most code has an even shorter lifespan than the knowledge we use to build it. which is as it should be: most code is written to solve a problem that won&#x27;t last decades or even years, but it&#x27;s still profitable for companies to have it written. modifying a big system is harder than modifying a small one, so it&#x27;s better to maintain just the code you need for today&#x27;s problems. writing code and throwing it away is mostly fine<p>still, i&#x27;ve spent my career on free-software tools, and their half-life seems to be a lot longer, about 25 years. i reviewed some of the stuff i&#x27;m using right now in a comment on here 10 days ago, <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=35829663" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=35829663</a><p>i know a guy whose preferred programming editor is ex. the non-full-screen version of vi
评论 #35957856 未加载
评论 #35958721 未加载
cabaalis将近 2 年前
I have found my doppleganger. The exact same technologies, progression, I even wrote a VIN scanning app for car dealers myself. My mind is blown.
emodendroket将近 2 年前
I will say that the core idea of SOAP&#x2F;WCF services is honestly pretty sound. There is no sensible reason (imo, anyway) that everyone needs to be using stringly-typed data and manually parsing REST responses when the underlying code all has type definitions. I get that it came with headaches (and I suppose people wanted to work in untyped languages) but jettisoning the entire idea of generating the client feels like it was throwing out the baby with the bathwater.
评论 #35958455 未加载
Taylor_OD将近 2 年前
&gt; Ruby on Rails is in jeopardy of being added to this list. It has fallen out of favor, and it is tough to find developers for it.<p>Ruby is the 8th most popular programming language. Ahead of C, C#, and a bunch of &quot;cool&quot; languages like Scala, Kotlin, and Rust.<p>Source: <a href="https:&#x2F;&#x2F;madnight.github.io&#x2F;githut&#x2F;#&#x2F;pull_requests&#x2F;2023&#x2F;1" rel="nofollow">https:&#x2F;&#x2F;madnight.github.io&#x2F;githut&#x2F;#&#x2F;pull_requests&#x2F;2023&#x2F;1</a>
rudenoise将近 2 年前
<i>I&#x27;ve seen things you people wouldn&#x27;t believe... Attack ships on fire off the shoulder of Orion... I watched C-beams glitter in the dark near the Tannhäuser Gate. All those moments will be lost in time, like tears in rain... Time to die.</i>
SoftTalker将近 2 年前
&gt; printing from the browser was its own fun nightmare<p>Remember Crystal Reports? Oh god, the pain. The pain.
评论 #35960501 未加载
评论 #35957523 未加载
评论 #35957439 未加载
jpgvm将近 2 年前
This is largely why I have tried to build as much as possible with OSS and contribute stuff as necessary to make that possible.<p>OSS tends to have a much longer relevant shelf-life and experience with it, especially internals remain highly transferable skills.<p>My work in and around Apache and CNCF ecosystems has been the only code I have written that truly endures in a good way rather than an ossified and decrepit legacy way.
TheRealDunkirk将近 2 年前
I&#x27;ve been down on myself about this. I&#x27;ve been at it for coming up on 30 years. I&#x27;ve written scores of programs and applications. There are only a couple still in use. Rather than be upset about it, I find that it&#x27;s more helpful to think of coding as tooling. As in, actual tooling that machine shops make: dies, jigs, gauges, etc. You know, the stuff that&#x27;s used to make the <i>actual</i> stuff. Tools go out of date. Tools get upgraded. Product lines change. Tools get scrapped. It&#x27;s all ephemeral. It&#x27;s just the nature of it. And this applies to &quot;the bigs&quot; as well, like Facebook or Google. The individual components and services are just tooling in service of the overall product, and rollover and change as time goes on. The only coding that ossifies into archeological strata is COBOL on mainframes.
评论 #35966084 未加载
Mister_Snuggles将近 2 年前
Interestingly enough, I&#x27;ve got a thing for &quot;ancient&quot; technology.<p>My dream retirement job is to work at a tax agency, like CRA or IRS, and help maintain their mountain of COBOL. I don&#x27;t know COBOL, I don&#x27;t know the ecosystem around it, but I absolutely know that I would love to learn it.<p>My first job was in a similar environment, supporting a homegrown application (which had grown out of a long-defunct commercial application) running on a Pick-style database system (UniVerse). The whole thing could trace its roots back to a Prime mainframe. Reading the code, especially the older stuff, was such an adventure.<p>ScarletDME[0] is seriously scratching the itch to play in this world.<p>[0] <a href="https:&#x2F;&#x2F;github.com&#x2F;geneb&#x2F;ScarletDME">https:&#x2F;&#x2F;github.com&#x2F;geneb&#x2F;ScarletDME</a>
woooooo将近 2 年前
Which is better&#x2F;worse, the hack with a plan which is removed promptly or the barnacle that persists forever?<p>The barnacle did provide more lifetime business value after all.
评论 #35957263 未加载
forgotmypw17将近 2 年前
I write a project using primarily a foss stack which has a 20+ year history of being committed to backwards compatibility, and I couldn&#x27;t be happier.<p>Utilizing the Lindy Effect to my benefit, I&#x27;ve been able to almost entirely avoid the typical framework frustrations, such as breaking changes and abandoned dependencies.<p>Instead, I&#x27;ve been able to focus on features, figure out a good code style, and support nearly all mainstream or once-mainstream browsers. On the back-end, I&#x27;m working on the Windows install process, but on *nix it&#x27;s fairly uniform across different flavors and lineages.<p>For those curious, it is Perl, text files, PGP, HTML, CSS, low-sugar JS, and a little bit of sh, Python and PHP for server glue. Now probably to include batch files...
amne将近 2 年前
From my few years in e-commerce I noticed this kind of pattern: - you(your company&#x2F;employer&#x2F;etc) have a problem.<p>- you solve said problem<p>- profit<p>- competitors catch up and hit the same problem<p>- 3rd party (or one of the 1st parties pivots) notices all of you have the same problem. implements solution to fix the generic version of the problem: a standard is born<p>- hubs appear that make it easy for your competitors to eat into your market share because they now use the 3rd party solution and are more agile.<p>- you can&#x27;t integrate because your solution is not complying to the new &quot;standard&quot;<p>- rewrite is needed<p>(edit: I hate HN formatting)
fsniper将近 2 年前
Am I reading this incorrectly or author is equating &quot;using old&#x2F;boring&#x2F;forgotten techs&quot; as technical debt?<p>How did technical debt become so bloated and meaningless? Isn&#x27;t it &quot;remaining half baked&#x2F;incorrect code, known edge cases, bad&#x2F;slow implementations, or even bugs due to constraints imposed on the engineering team&quot;? How is dead technologies are imposed constraints?<p>Author is not talking about technical debt but experience that is not directly applicable anymore.
hoc将近 2 年前
Lot&#x27;s of &quot;near-RAD&quot; tools with large runtimes and platform&#x2F;environment&#x2F;framework dependencies in this list.<p>The typical thing some of us tried to avoid while others (or their employers) totally embraced these comfortable (advertised as productive and fast) and often proprietary tools. The contrasting would be HTML, JS, C&#x2F;C++, all closer to the bare metal of their respective targets. Or Java and Python as the two that made the race in more complex but purely language levels, as Rust is doing right now. Java has gotten connected more and more to its typical business frameworks these days, so beware :)<p>Some of them died just with their platform as ObjC&#x2F;Swift would die with Apple, Kotlin with Android these days.<p>It seems a split between language and environment&#x2F;frameworks has proven to provide some stabilty at least.<p>Seldom (and funny) to see such a &quot;consistent&quot; list, though :) There might be something like &quot;consulting work&quot; as the recurring theme in it. As a product&#x2F;system&#x2F;platform developer one might have had (and would have been forced to) put more effort in selecting the tools for long term availability where they are not forced upon you by the platform or time-to-market considerations.
nurettin将近 2 年前
I started with 6510 assembly. I have 25 year old delphi apps. But nodejs and go hypes are also 10+ years old. If you haven&#x27;t learned, maybe you are stuck on purpose.
kelnos将近 2 年前
I kinda find the premise here to be flawed. To me, technical debt is stuff that you do <i>intentionally</i> that you know is bad and will have to be fixed at some point, but you&#x27;ve decided the trade off of shipping sooner is worth it.<p>Sure, all code rots, frameworks and even languages come and go. That&#x27;s not technical debt, to me, though.<p>Put another way, if everything is tech debt, then there&#x27;s really no point to having the term at all.
ur-whale将近 2 年前
When I look at the list of &quot;technologies&quot; the author invested in learning ... no surprise it&#x27;s all technical debt or deprecated: all the things he lists are completely superficial and have obvious short-term, &quot;I can make money now with this stuff&quot; flavor to them.<p>Had the author invested in learning stuff like math, physics, cryptography, advanced data structures and algorithms, functional programming theory, 3d programming, compiler theory, database theory, etc...<p>None of it would be obsolete today, and all of it would be almost immediately applicable in any language that happens to be the flavor of the day at a given point in time.<p>Let that be a lesson to all of the folks who become extremely proficient in the latest react-like fad javascript framework: in 10 years time, all your knowledge will be useful for one thing: maintaining and patching old crumbling code piles that no one wants to touch.<p>Do yourself a favor instead and go learn timeless things that will still be completely relevant 20 years from now. Then spend a minimal amount of time learning how to apply it in whatever language&#x2F;framework of the day is fashionable at your job.
peter_retief将近 2 年前
Think of the hours lost building code that becomes useless. This is one of my greatest regrets in writing code. I blame the likes of Microsoft that have consistently created bad frameworks that locked out other options and designed for their own buggy operating systems. This is still happening, one of the reasons I do not use Microsoft. Hang on I lie, I am using visual code on my Linux box at the moment.
FpUser将近 2 年前
All my desktop GUI software since 90s was &#x2F; still is done in Delphi (Lazarus for multiplatform). The language &#x2F; IDE grew but remained compatible and I&#x27;ve never had to throw away the code.<p>C++ merrily carried my backend solutions over the same timeframe with the same results.<p>Same for C when writing firmware.<p>Same for JavaScript &#x2F; HTML for browser based front ends.<p>In all of the above I used some domain specific libs but stayed away from big frameworks as those come and go pretty fast.<p>I consider neither as a tech debt as they let me concentrate on the product rather than dwell on what tech do I use. I&#x27;ve never felt inferior for not using this new and shiny doodad as I&#x27;ve always delivered superior products and that is what mattered for my clients.<p>Yes I had to program in whole bunch of other languages upon client requests but this was rather rare. I have good track record in creating new products from scratch and that is what my clients really want. They mostly do not care what I use for development.<p>So no. I do not feel that tech debt at all and I still play with other tech a little to stay current in case it is needed by client.
self_awareness将近 2 年前
Whole BSD&#x27;s &#x2F;bin directory disagrees with this thesis that everything eventually becomes technical debt.<p>If you pick new technologies, don&#x27;t be surprised that they will be quickly overridden by something else. Pick stable and boring frameworks and languages. I.e. lots of old Java Swing applications runs on today computers without recompilation.
kazinator将近 2 年前
Years before this guy got started, I was working in C. Then I moved onto more C, C++, then back to C. Today I&#x27;m working in a C++ codebase that compiles to C.<p>Lisp on the side, plus the Unix cruft that goes with build systems: shell, awk, make, ...<p>I went through the language churn as a kid. BASIC, assembly languages, Pascal, Modula-2. Studying CS pulled me into C world; all the upper level coursework at that time was systems programming in C on Unix, whether it be compilers, networking, distributed systems, operating systems or computer graphics or what have you.<p>I didn&#x27;t think I&#x27;d be cranking out C for another 30 years after that, but I also didn&#x27;t think of any reasons I wouldn&#x27;t be.<p>Not everything I worked on is around; but the skills left behind are entirely relevant. There is hardly any technique I ever used that is inapplicable.
chrisatthestudy将近 2 年前
For much of my (35+ years) programming career I have worked in Delphi&#x2F;Object Pascal. When I was first introduced to it, it was the new hotness, but the last Delphi job I worked on was supporting a 15 year old legacy product.<p>On the other hand I&#x27;m currently working on Android, where everything seems to be obsolete within a year...
nomercy400将近 2 年前
The technology might have aged, but the initial concepts used for that technical design are still there and relevant.
efields将近 2 年前
&gt; Ruby on Rails is in jeopardy of being added to this list. It has fallen out of favor, and it is tough to find developers for it.<p>Hardly.<p>&gt; What once made it unique is now available in other languages.<p>Sure, yay open source.<p>You still can&#x27;t get as much out of the box with one CLI command for a new rails app in node.js. I would love to be corrected on this.
hermitcrab将近 2 年前
&quot;In the long run. we are all dead&quot;. But I find it hard not to look at software and think how ephemeral it all is. All those late nights and all that debugging and it has mostly disappeared without a trace within 10-20 years. And that is the stuff that even got used at all. :0(
评论 #35959358 未加载
sam_goody将近 2 年前
PHP.<p>Still works and the codebase is still being incrementally updated ~20 years in.<p>Stint with Laravel, which was a huge task to add, and an even huger task to eventually remove; After an update by Laravel that was not backwards compatible made us rethink the cost&#x2F;value.<p>Javascript on the frontend, with no libraries as critical infra except for HTMX.<p>Was once a contributor to Mootools; now use quite a bit of homegrown funcs, and use libraries for spot instances (Alpine, Uppy, QuillJS - all of which are written modular with intention to be traded out.)<p>MySQL and eventually Postgres. &quot;NoSQL&quot; only when it was added (as JSONB) to Postgres.<p>All of those years of coding are an asset, not a liability.<p>Don&#x27;t go chasing the new and shiny, it doesn&#x27;t last. (And steer clear of Web3, will ya?)<p>EDIT: We use Tailwind - and time will tell if that is a mistake.
joemasilotti将近 2 年前
&gt; Ruby on Rails is in jeopardy of being added to this list. It has fallen out of favor, and it is tough to find developers for it. What once made it unique is now available in other languages.<p>I beg to differ. There are 1000+ Rails developers actively looking for work on railsdevs.com
评论 #35960816 未加载
cookieperson将近 2 年前
I wish more mid career devs understood this. All those PR review battles over commas in comments are mostly wastes of time. Entropy comes, it&#x27;s one of the few guarantees we have. Your legacy will not be the software you wrote, but the impact that software had.
dep_b将近 2 年前
Skills I learned and are still valid today:<p>- SQL - Terminal - OO programming travelled pretty well from C#&#x2F;Java to Objective-C to Swift<p>Then there&#x27;s stuff that is still called the same but completely unrecognizable compared to the time I was good at it like HTML &#x2F; JS &#x2F; CSS
syntheweave将近 2 年前
The lessons I&#x27;ve learned from all my programming projects are:<p>1. If the codebase would still work on a &quot;dead platform&quot;, but you are targeting something new, you are chasing after hype, to some degree.<p>2. If the code involves significant data entry, you probably want to leverage a spreadsheet, because eventually you will want to edit something tabular and also make charts and reports. The things &quot;dashboards&quot; do are also very reasonable to do from inside a spreadsheet - make a tiny shim to pipe in some data, and then make the dashboard frontend using all the built-in goodies.<p>3. If the code is mostly about making custom UI, you are on the path to saleable application software, or at minimum, a tech demo that people will talk about.
knorker将近 2 年前
I made a whole bunch of things that have not been deprecated or tech debt. It&#x27;s about which technologies you use.<p>C is not deprecated. Maybe in a 100 years it will be, but it seems unlikely.<p>It&#x27;s very rare to find someone who has C as their favourite language, but it&#x27;s incredibly persistent.<p>C is the opposite of the latest JS framework.<p>I regularly fix bugs in open source, where when checking when the bug was introduced the trail often runs cold in the mid to early 90s, as it predates that project&#x27;s use of source control.<p>But yeah, if you have a 20 year career of following what is clearly the latest fad, then you&#x27;ll have that experience.<p>Java applets were never &quot;big&quot;. They were a fad, and promise of big. But they always sucked, even by the standards at the time.
评论 #35961416 未加载
antomeie将近 2 年前
I still maintain apps in Objective-C, but I don&#x27;t view them as technical debt. I find it mostly fun to maintain the knowledge.<p>One day the apps (products) may themselves become technical debt, but that is not the fault of the language they were written in.
austin-cheney将近 2 年前
<i>I predict WebAssembly will eventually overtake how front-end development is today, and a whole new world will evolve.</i><p>I have heard this with great emotion for at least 6 years now and nothing. It’s starting to look like bitcoin: all these dreams and ideals that come to nothing in practice but a Ponzi scheme.<p>The funny thing is that it clearly indicates nobody know what they are doing. People advocating for WASM want DOM bindings because the DOM is great and JavaScript is the great evil. Most people who actually write JavaScript professionally feel equally about the DOM, a great evil, and so they are completely reliant on some massive framework to justify the their existence.
rawoke083600将近 2 年前
Sooooo then LISP for growth, profit and staying power ?<p>Sorta like how LISP might be the &quot;Guns &amp; Roses&quot; of coding; Not everyone like it, but in their hearts they know it has greatness on some level. And no one can argue with their staying power :D
sershe将近 2 年前
I left a company once due to some reorg&#x2F;internal politics while we were in the middle of developing a new system from scratch. 6 years later, I was going to leave my then-current job and I got some interest from my old team (that was by that point made up of almost entirely different people) where part of my job would be... decommissioning and migrating tons of people off the system I was developing 6 years ago! I also had expertise in the new stuff they needed but I thought that was funny and also I think it helped me negotiate a good offer...
Taylor_OD将近 2 年前
Kinda a weird article to be honest. It seems less like the author is annoyed at having to learn new languages or that their language specific knowledge because less useful as time goes on, and more that they are frustrated their code doesnt live on forever.<p>I guess I don&#x27;t particularly care if my code lives on or not. I build something. It&#x27;s hopefully useful for others or myself for some period of time, then its gone.<p>It&#x27;s just lines I&#x27;ve written. Why would that be more important than other lines I&#x27;ve written? In other careers I never thought about how my work was eventually going to be forgotten. That&#x27;s just how life goes.
评论 #35963126 未加载
mpeg将近 2 年前
I&#x27;ve only been programming professionally for 15~ years and I fully agree with the article.<p>In my career I&#x27;ve gone through so many tech stacks, most of which are dead or dying today. A lot of my projects you could today replace with a couple API calls or an AWS product.<p>At least I like to think I learnt a few things along the way that make me a better developer, I never know what to say when recruiters or interviewers ask me about my tech stack experience expecting some sort of very specific answer – to me it makes as much sense as asking whether I have firefox experience, or just chrome.
frithsun将近 2 年前
This is why I stubbornly refuse to use Typescript.<p>Javascript is an ECMA standard. I&#x27;ll just do the JSDoc hack and cheer for TC39 rather than waste my time with a technology that&#x27;s great for now but will probably end up being technical debt.<p>Think of how little somebody who uses C, bash, vim, and javascript has had to adapt in the past several decades, all because they avoided technologies where the buck stops with a community rather than a corporation.<p>Corporations are cool and all. I&#x27;m not a dirty hippie. But at the end of the day they don&#x27;t make money when things don&#x27;t change.
DrScientist将近 2 年前
Element of inevitability of course, but I have to look at those tech choices - largely from the MS walled garden - and wonder whether that was a factor as well.<p>Do walled gardens not last as long I wonder?
chaostheory将近 2 年前
Apparently, we’re making either Tibetan mandala art or Theseus’s Ship
评论 #35958780 未加载
g9yuayon将近 2 年前
Is it just me or somehow programming languages and frameworks are not my focus any more? I&#x27;m still interested in programming language designs and implementations, but I&#x27;m quite neutral on what language&#x2F;framework to use in my work. There are just too many other things to take priority: organizational structures, system architectures, emerging technologies, new hardware, algorithms, insights in a domain, and etc. Choice of languages barely moves the needle.
papito将近 2 年前
Don&#x27;t get attached to your code, ever. You are not building the Pyramids of Giza, no one will study your work 3000 years from now, or 15, for that matter.<p>ALL of your code will be dead in a few years. The company goes under, or some punk CTO comes in and commands a &quot;full rewrite ASAP!&quot;. Even with normal evolution and refactoring, your original work will be unrecognizable.<p>Either way, you take experience and friendships from your employment, you are not going to be the Picasso of software engineering.
评论 #35966076 未加载
deepsun将近 2 年前
&gt; I have projects at my company in the old version of Angular that is a major technical debt we must upgrade.<p>My favorite job -- to refactor something old. If only businesses wanted to pay for it.
评论 #35958562 未加载
carapace将近 2 年前
I used to feel bad about how much of my career was waste. Then one day I met a retired <i>hardware</i> engineer, a old hand who had rubbed shoulders with Shockley, who told me that 80% of the projects he worked on never even made it to production. Four-fifths of his <i>hardware</i> career was waste!<p>If it&#x27;s that bad in hardware land I don&#x27;t feel so bad about this virtual detritus we software people spew. At least it&#x27;s cheap, eh?
bgirard将近 2 年前
This is why I&#x27;m particularly proud of my contributions to (web) standards. There&#x27;s a good chance that they&#x27;ll be my longest lasting contribution.
metafunctor将近 2 年前
The stickiest code I ever wrote was an open source library released in 2000 or thereabouts. It’s still in use, and still new users are adopting it. Someone made a Wikipedia page for it. I think it’s embedded in most Apple products.<p>Other than that, yeah, most of what I’ve made is no longer used by any significant number of people.<p>Not sure if there’s any wisdom to draw from this anecdote, but I did spend a lot of cycles in trying to perfect that library!
berkeshire将近 2 年前
The idea of leaving behind a lasting legacy of work is vanity squared. The ones who do selfless work for open-source do not necessarily do it for a place in history. The point of choosing a purely materialistic software career was to have the ego humbling of watching one&#x27;s work get decimated or trivialized in due course.
robertlagrant将近 2 年前
It&#x27;s harder now. Way back when you could write ls and it would basically be a &quot;done&quot; piece of software to be distributed everywhere. More recently the big standards are enormous projects involving thousands of people, such as Docker or Kubernetes, that seem to have fairly unbounded feature lists.<p>One exception: I think the jq tool could stay viable, if it made it into a standard toolset. It solves a defined problem.
theK将近 2 年前
I find it interesting how tech that mostly comes out of enterprises tends to have a shorter shelf life than the &quot;more open&quot; options.<p>&gt; Basic, Silverlight, ColdFusion, asp...<p>I&#x27;d add &gt; Lingo, Flash<p>Basically if Microsoft, Adobe or any other entrenched player make it easy for you to develop in it and they offer the only Dev stack then its probably going to die quickly.<p>Counter case, apple seems to be doing fine with swift. So I might be wrong here.
评论 #35959295 未加载
throwaway3838g将近 2 年前
If a business lasts long enough for your code to be replaced, that’s a success. The code you wrote helped your company beat the odds and stay alive.
Tade0将近 2 年前
The other day my friend from a previous job linked me to a PR I did 7 years ago, which he accepted, that introduces a regression which went unnoticed all this time and that is probably the oldest piece of code I&#x27;ve written that&#x27;s provably in use today.<p>The whole project will eventually disappear in history in favour of a rewrite which is around since before the pandemic.
ChrisMarshallNY将近 2 年前
<i>&gt; I would argue that any apps written in Objective C are probably technical debt now.</i><p>That would probably include the lions&#x27; share of system code in the Apple OS ecosystem.<p>I&#x27;ll bet a lot of it hearkens back to the NextStep days.<p>Since it is a UNIX OS (all of the OSes), then there&#x27;s plenty of good ol&#x27; ANSI C, as well.<p>I&#x27;m almost positive that every AAA app is still a ObjC BoM (Ball of Mud).
eimrine将近 2 年前
&gt; All code rots or gets replaced<p>&gt; Over time, you can see how almost everything you create gets scrapped and replaced for various reasons or is now based on old technology.<p>Is this problem fixable by using some great technologies? React code does not rot and Common Lisp applications are famous as having the most time without getting rot among other programming languages.
评论 #35960434 未加载
Shorel将近 2 年前
I think looking only at technologies is the wrong approach.<p>The underlying concepts stay the same. Your own experience is much improved.<p>Some old technology gets replaced? I celebrate the demise of Flash.<p>I am not Flash or even a Flash developer. I am a software developer.<p>I am a bit sad Dlang is not more used? Yes, I am. But I am not a &quot;Dlang&quot; developer.<p>Tying yourself to some technology seems self limiting.
ascar将近 2 年前
This might ring true for most jobs and especially for anything business related. If you go lower on the library, tooling or infrastructure side things tend to live on much longer, especially if it&#x27;s simple but necessary functionality. Code doesn&#x27;t automatically become technical dept just because it becomes older.
mediascreen将近 2 年前
&gt; Fast forward to today, and MVC has since fallen out of fashion. Everything is now done in React, Angular, Vue, and other frameworks.<p>I wouldn&#x27;t be so sure about that. Fallen out of fashion perhaps, but still very stable, easy work with, predictable and with pretty clear best practices that don&#x27;t change every three months.
albertopv将近 2 年前
Absolutely, that&#x27;s why I&#x27;m trying to move to management, to leverage on my non tech experience. I&#x27;m 40 and younger colleagues are faster learner if not already &quot;expert&quot; on new stuff. I often have to &quot;forget&quot; what and how I learned old things to learn new techs, the effort can easily double.
gravypod将近 2 年前
&gt; One of the biggest challenges we had at Stackify was getting stuck on an old version of Elasticsearch. At one point, they made some significant changes to how it worked that were not entirely backward compatible.<p>I am glad I am not the only one who hit this roadblock with Elasticsearch. It felt like always trying to play catch up.
jononor将近 2 年前
Paraphrasing... &quot;There are only two kinds of code: the ones people complain about and the ones nobody uses&quot;
1-6将近 2 年前
As long as you know how to get out of technical debt (islands too) when you see one, you&#x27;re suited for any task.
orsenthil将近 2 年前
The point this piece is missing is, the defining tech as how marketing defines product. Customer needs evolve and products need to change to cater to that. It is just evolution. The work that under powers the solutions (C Programming language for instance), hasn&#x27;t changed.
kunley将近 2 年前
By the way (not to diss author&#x27;s involvement in windows-related technologies) I am very happy to still use many of the inventions of Mr Ken Thompson that did not become technical debt and it&#x27;s unlikely they will (apart from being rewritten&#x2F;transformed).
SergeAx将近 2 年前
Technical debt is something one have to &quot;repay&quot; eventually, thus the naming. &quot;Making technical debt&quot; is to do something in a quick but hacky way with the intention to re-do later and better. Almost never happens, by the way.
VyseofArcadia将近 2 年前
I&#x27;ve been focusing lately on stepping off the new and shiny treadmill. While the kids and startups are chasing that new hotness, I can be incredibly productive in less fashionable tools that I already know.
knallfrosch将近 2 年前
All 5 years of my web software development, I&#x27;ve ported code to Angular. I&#x27;ve read your legacy code, and ported it to a framework that&#x27;s already in decline. Of course it&#x27;s all legacy.
kangaroozach将近 2 年前
So what are the current languages and frameworks that are least likely to soon become “technical debt”? We use Python, Django, Node JS, Next JS, React JS. How do those fare?
maxehmookau将近 2 年前
The Strong Bad clip at the end just transported me back 15 years.
lutorm将近 2 年前
20 years ago I was mostly writing C++ for work. I still am.
mathgladiator将近 2 年前
&gt; Developers jump ship quickly<p>this is probably the most damning thing about the field. We don&#x27;t invest in developers, so why would they invest in the business?
chriscappuccio将近 2 年前
The dude equivocates programming in Perl to programming in FoxPro, both are simply &quot;deprecated&quot; and &quot;hard to find.&quot; Is this true?
评论 #35958405 未加载
评论 #35958794 未加载
lofaszvanitt将近 2 年前
Use jQuery. Let others jump on these speeding, then derailing trains and collect their broken bodies at the crash sites years later.
ben_w将近 2 年前
Similar vibes, looking back on my CV; now <i>I&#x27;m</i> the &quot;grumpy old man&quot; shaking his fist at reactive programming and VIPER…
hudsonhs将近 2 年前
I use an open-source version of ColdFusion at the company I work for that was founded 10 years ago.<p>I mean, I don&#x27;t <i>like</i> it but...
Cerpicio将近 2 年前
Don&#x27;t be sad because your code is old. Smile because you got to write code. -- Me (paraphrasing Dr. Seuss)
Jeff_Brown将近 2 年前
The guy is still coding for money, right? So clearly he managed to absorb something that&#x27;s still valuable.
gadders将近 2 年前
Interesting article. I wonder how, say, builders or architects feel when a building of theirs is demolished.
MadSudaca将近 2 年前
it’s paradoxical but the opposite might be true as well… code you’d be happy to hear was replaced because you were not particularly proud of it, turns out to live on for a long time having people maintaining it without understanding it very well long after you’ve left the organization
raincole将近 2 年前
I mean unless the human as a species stop growing, all of your career will be deprecated one day, right?
momirlan将近 2 年前
that is true for front end dev. not so much for back end. SQL, Oracle, Sql Server, Teradata, Data Warehousing are still used after more than 20 years. Skills are easily transferable to Snowflake, Big Query, Azure ...(whatever it&#x27;s called at this moment)
ironmagma将近 2 年前
Not anymore, now we have JavaScript and that stuff will simply run until the apocalypse.
markb139将近 2 年前
Some of the stuff I’ve worked on (Nokia phones) have been museum pieces for some time
bryanrasmussen将近 2 年前
My 20+ year career is technical debt, deprecated, or parts of governmental standards.
876978095789789将近 2 年前
Will Rust succeed in eventually making all C (and even C++) code technical debt?
评论 #35959614 未加载
chasd00将近 2 年前
I’m assuming your paychecks didn’t bounce over those 20 years so who cares?
samhuk将近 2 年前
&gt; My entire career is now technical debt, or the code has been deprecated.<p>Contrary to the author, for me, over my entire career, I feel like I have been relatively incredibly lucky with my choices of 1) What (web) technologies to invest lots of time into, and 2) Therefore what tools I use in my own projects and at companies I have worked for.<p>I think that 50% of the reason is down to when I was born and therefore when I started my software engineering career (for example, therefore avoiding lots of bad alleyways that web dev went down), and 50% was just common sense (realizing early-on that X tool was obviously going to be superior to Y tool).<p>1. I was fortunate enough to be born at a time such that I just about missed the AngularJS --&gt; Angular2 betrayal + debacle.<p>2. I realized, through playing around with the Angular2 beta around 2014 (IIRC), that it was going to be inferior to React. I remember that at the time React was this tiny thing that had existed for around a year or so, but it was clearly conceptually superior, with more talented Facebook developers behind it vs the Google developers behind the early Angular2.<p>Not to be too disparaging or direspectful, but at least in the early days, it felt like Angular2 was made by a team of your usual C++ Google engineers who didn&#x27;t have a lot of experience with web dev. Just being honest here...<p>This lead me to A) selecting React for my personal projects, and B) advising to pick React at companies I worked for. This meant that there are React codebases that I contributed to ~8 years ago that are still active at companies today.<p>3. Through sheer luck, I started my true web dev career after the &quot;random crazy insecure web technologies&quot; era such as Flash, Java applets, and all that nonsense.<p>4. Through sheer luck, I started my true web dev career shortly after Typescript was created, and I just happened to use a framework (now non-existent) which used it, co-introducing it to me in ~2014. This meant that I have been able to create relatively maintainable Typescript codebases, mostly avoiding creating any quick-to-deprecate JS mess-heaps.<p>There are a couple more examples, but I think that captures why I feel so lucky. I feel bad for the engineers that, through a combination of bad luck (time born, time entering the field, etc.) and lack of foresight, were led down paths causing them to invest a tonne of time into technologies that were just never going to be around for the long-run.<p>My time will likely come where my luck runs out, and I end up investing a tonne of time into some nonsense tech that initially seems solid but ends up rubbish for whatever reason, but for now, I&#x27;m quite pleased :)
Avalaxy将近 2 年前
I&#x27;m a freelancer in data engineering &#x2F; machine learning engineer. I&#x27;ve so far never held a role that I had the technical skills for (well... I do have the underlying knowledge, but not the particular frameworks&#x2F;tools), because every time my freelance project ends and I&#x27;m looking for the next one, the tools have already changed to something else that is hip. Or the go-to architecture is now a different one. Or the way you deploy it all is completely different.<p>It&#x27;s pretty frustrating. I keep trying to do courses to keep my skills up-to-date, but it doesn&#x27;t matter. Those courses by themselves are already outdated a year later. The only things that have been solid in my career, is the CS knowledge and theoretical knowledge from books like &#x27;designing data intensive applications&#x27;. That stuff rarely changes. The rest is like waves in a sea. They come and go.
bdhndnd将近 2 年前
Today’s best practice is tomorrow’s technical debt.<p>Paint that shed.
kohlerm将近 2 年前
After 20 years (for me) Java is still kind of alive
p0w3n3d将近 2 年前
Flaaash! <i>shouting in Will Shatner voice</i>
keithnz将近 2 年前
weird, tons of my 20 year old code is still around, but my 30 year old code, except for embedded stuff, is likely dead.