5 ms·
There will be an increasingly important history component in comp sci., software engineering, infosec, and associated fields. I think this is a place where the
by EvanAnderson 3y ago
There will be an increasingly important history component in comp sci., software engineering, infosec, and associated fields. I think this is a place where the IT field has done a bad job and, as a result, we've had unbelievable amounts of "wheel reinvention".
I'd love to hear from somebody with experience in scientific or other disciplines and IT who could contrast their fields with ours. I only know that I have had to go out of my way to pick up a historical component to my IT education, whereas it seems like a historical foundation is part of traditional math, science, and engineering training.
Vernor Vinge was right, though-- software (and hardware) archaeologist will be a real job.
- cjalmeida 3y agoI've heard that advanced math has a similar problem, that some subjects are quite deep that only a handful of people really understand the topic and passing the knowledge down to younger mathematicians is not a given.
- alpaca128 3y agoI guess in IT it's the other way around, where you can start with advanced abstractions and frameworks without bothering what kind of rabbit hole is underneath (at least while it's going smooth), it gets deeper as you go closer to the hardware. While in maths you need to understand the basics to even know what's going on with more advanced areas. And this already applies to the fundamentals too, where in school it's expected you understand the stuff from previous years. At least that's my impression as a non-mathematician. And then there's the mix between the two in languages that rely heavily on powerful type systems.
- oldsecondhand 3y agoNo, you can do the same in math. It just means ignoring the proofs and just using the theorems as they are. However sometimes the application and proof requires similar ways of thinking, and you kind of miss out by skipping the proof. But the same can be occasionally true for software engineering.
- bongobingo1 3y agoAre there good historical examples of this happening, where foundational knowledge is completely lost? I know I have read about it in books as a fiction, but I assume it must have already happened here before. Maybe its an oxymoronic question to ask, seeing as if its lost we might not even know its lost, but more in the vein of "We put the lime in the mortar because this is what we have always done", unaware of the actual properties of lime when interacting with concrete.
- everdrive 3y ago>Are there good historical examples of this happening, where foundational knowledge is completely lost? Usually following the fall of empires. Ibn Khaldun (1332-1406) wrote: "Perhaps they have written exhaustively on this topic, and their work did not reach us. There are many sciences. There have been numerous sages among the nations of mankind. The knowledge that has not come down to us is larger than the knowledge that has. Where are the sciences of the Persians that ‘Umar ordered to be wiped out at the time of the conquest? Where are the sciences of the Chaladaeans, the Syrians and the Babylonians, and the scholarly products and results that were theirs? Where are the sciences of the Copts, their predecessors? The sciences of only one nation, the Greeks, have come down to us, because they were translated through Al-Ma’mun’s efforts. He was successful in this direction because he had many translators at his disposal and spent much money in this connection."
- Mordisquitos 3y ago> Are there good historical examples of this happening, where foundational knowledge is completely lost? Maybe not quite in the context you were asking, but philosopher Alasdair MacIntyre argues as the premise in his book After Ethics that this is what happened to the philosophy of ethics after antiquity. Copypasting from its Wikipedia article [0]: > [After Ethics] begins with an allegory suggestive of the premise of the science-fiction novel A Canticle for Leibowitz: a world where all sciences have been dismantled quickly and almost entirely. MacIntyre asks what the sciences would look like if they were re-assembled from the remnants of scientific knowledge that survived the catastrophe. > He claims that the new sciences, though superficially similar to the old, would in fact be devoid of real scientific content, because the key suppositions and attitudes would not be present. "The hypothesis which I wish to advance", he continues, "is that in the actual world which we inhabit the language of morality is in the same state of grave disorder as the language of natural science in the imaginary world which I described." Specifically, MacIntyre applies this hypothesis to advance the notion that the moral structures that emerged from the Enlightenment were philosophically doomed from the start because they were formed using the aforementioned incoherent language of morality. [0] https://en.wikipedia.org/wiki/After_Virtue https://en.wikipedia.org/wiki/After_Virtue
- jiggawatts 3y agoAnalogue electronics design has been almost entirely replaced by digital micro-controllers to the point that finding old-school electrical engineers that can design non-digital circuits is becoming a challenge.
- quenix 3y agoIs this really true? Many aspects of analogue design are still relevant imo. Actual IC design (VLSI etc) is still a purely analogue field and all digital technology is fundamentally analogue at its core.
- tempe1h1 3y ago[dead]
- svnt 3y agoI believe parent is referring to design at the PCBA level, where this is mostly true outside of military/government designers who lag. The reality in that sphere is there is little reason to limit oneself to the constraint of expertise in analog circuit designs when one can achieve the same functional outcome digitally, and use those skills more broadly. Only where component sourcing is artificially limited, or risks of digital operation sufficiently large, and where the job market will support it, does it make sense to proceed in growing in analog circuit design expertise. Meanwhile these designs are nearly all being functionally lapped by those in general industry, which participates in all the accelerating gains of digital technologies.
- drewcoo 3y ago> There will be an increasingly important history component in comp sci., software engineering, infosec, and associated fields. Much as I'd like that, I disagree. The momentum has always been against that. We're members of a cult of the new, which does not value or even acknowledge the old. Which is why we keep reinventing the same solutions but with different tech stacks. This drives developer value down which drives developer salaries down, so I don't see it changing. FWIW, my history of math class as an undergrad was a math elective that almost nobody else took. Other math students didn't want to learn history and other history students didn't want math. And the curriculum stopped at the 18th century, before things got really interesting.
- robertlagrant 3y ago> We're members of a cult of the new, which does not value or even acknowledge the old This just isn't true. We have Heartbleed because we refuse to move off how we wrote software 30 years ago[0]. HTTP was invented in the 1980s[1]. REST in 2000[2]. TCP/IP in the 1980s[3]. Ethernet the same[4]. I'm pretty sure we acknowledge and value all of those things. Our field, depending on how you define it, is only about 70 years old. Those things are pretty old in those terms. [0] https://queue.acm.org/detail.cfm?id=3212479 https://queue.acm.org/detail.cfm?id=3212479 [1] https://en.wikipedia.org/wiki/HTTP https://en.wikipedia.org/wiki/HTTP [2] https://ics.uci.edu/~fielding/pubs/dissertation/rest_arch_style.htm https://ics.uci.edu/~fielding/pubs/dissertation/rest_arch_st... [3] https://en.wikipedia.org/wiki/Internet_protocol_suite#Adoption https://en.wikipedia.org/wiki/Internet_protocol_suite#Adopti... [4] https://en.wikipedia.org/wiki/Ethernet https://en.wikipedia.org/wiki/Ethernet
- everdrive 3y ago>I think this is a place where the IT field has done a bad job and, as a result, we've had unbelievable amounts of "wheel reinvention". Some of this just seems to be due to the maddening popularity contest of technologies and frameworks within companies. There is a frantic rush to make sure you're doing everything that your competitors are doing, but not much introspection regarding whether things will actually help your company. You're just keeping ahead for the sake of keeping ahead.
- criddell 3y agoI couldn’t agree more and it’s something I didn’t understand at all until my final year at university. I was talking with one of my professors and complained about having to learn and use SML and Eiffel for some projects when in the real world, I’d be using something like C (this was 1994). He asked me if I was there for an education or training. I think today it’s probably more true than ever. Schools are under pressure to turn out grads who will be productive on day one and I think it’s shortsighted.
- intothemild 3y agoI completely agree here. The problem was that there was a shortage of developers, and that most universities still only had CompSci degrees, not Software Engineering degrees, coupled with those degrees were 3-4 years long... So enter the code bootcamp, where you're basically given a hammer, and taught that every problem can be solved with it.. Now those bootcamps aren't all like this, and there were and are good ones out there.. ...but from what I've seen (I want to stress that this has happened rarely compared to the rest) a graduate of one of faster bootcamps, that learned a single language, like JavaScript, and try and solve every problem with whatever answer they found someone else upvoting.. without any amounts of thinking if it's the right solution for this specific problem. The problem is as your professor said. Do you want an education or training... And also as you said, that you can't turn out effective software engineers with a quick or short amount of education.
- brandall10 3y ago"and that most universities still only had CompSci degrees, not Software Engineering degrees" Is a Software Engineering degree really a thing? Perhaps outside the US? Can you point to a notable university that has this major? A quick search gives me the impression this is an online correspondence program type of thing. At UCSD in the late 90s we had a Software Engineering class but that was it. Otherwise internships were supposed to prepare you for your careeer.
- sgarland 3y agoUT Austin has an undergrad Electrical and Computer Engineering program, which you can specialize into Software Engineering and Systems. That’s about as close as you’ll get, I think, and since it’s ECE you’ll also have a fair amount of hardware experience - not a bad thing IMO. They do have a full SWE track as a Master’s program, which I did, and quite enjoyed.
- pjmlp 3y agoMy software engineering degree had such information, that is how eventually I went from a UNIX/FOSS zealot, to someone discovering the alternative universe of Xerox PARC, ETHZ and having the seed to research the department library about systems programming languages of the past, since Fortran came to be as first alternative to raw Assembly. Unfortunately not all degrees, or universities are well prepared to offer this, or have staff that cares about making it happen.
- lordfrito 3y ago> Vernor Vinge was right, though-- software (and hardware) archaeologist will be a real job. Spend some time in the coin op game community... This is all we spend our time on. Well that and cabinet repair. But seriously though, keeping these old games alive requires serious reverse engineering of both hardware and software. Especially if they have custom chips, ASICs, undocumented features, etc. But the work has to be done or these games will be lost to time... It may be a passion project/ hobby, but it's still real work. I like your point about digital archaeology. If it's important enough to some people to keep old arcade games running, how much more important is it to understand and keep some old mission critical computer running. It's a lot like the tech people you see in these dystopian future movies, the ones who are like "oh yeah you have an old z80 with the qxp interface, haven't seen one of these things in years". Like Scotty from Star Trek. They're an increasingly important part of the tech ecosystem.
- spicyjpeg 3y agoHaving been working on writing documentation, tools and homebrew SDKs for arguably one of the most influential arcade systems ever made [1], I could not agree more with this. Hardware and software gets left behind by the original developers all the time, but that in no way makes it no longer relevant - and it certainly does not make the underlying concepts outdated. Z80 or 68000 assembly language might be completely useless to a web developer, but shall we call it "obsolete" when there are millions of these processors still around running critical infrastructure? Shall we really claim that learning to manage memory manually is futile since GC languages exist? Besides, the PlayStation based hardware of this specific arcade PCB is not that far off from the ubiquitous 32-bit microcontrollers that underpin modern digital society; in fact the MIPS R3000 derived instruction set even bears a striking resemblance to that newfangled RISC-V thing every investor is talking about. And yet most of my 19-year-old university classmates want to stay away from "scary" embedded or kernel work in favor of web or game development. [1] https://psx-spx.consoledev.net/konamisystem573/ https://psx-spx.consoledev.net/konamisystem573/
- lordfrito 3y ago> And yet most of my 19-year-old university classmates want to stay away from "scary" embedded or kernel work in favor of web or game development. It seems that with more abstraction, more people throw up their hands and say "I'll never understand it", "The designers of this system did things in the stupidest way possible", "It's magic" or (in the case of the financial system) "It's a rigged game" "You're working for the man" What all of these points of view have in common is that the people who hold them have given up trying to understand the world around them. Instead they take the intellectually lazy way out and compose their own pet theories of why things are the way they are, this is where tinfoil hat stuff comes from. This is dangerous, and is sort of the point of the original article. I keep telling people that "the world is still knowable, still understandable". You have to put in the time and learn about it. It's easy to do, you just have to do it. There are plenty of "average" people playing in these "difficult" to understand fields. What we desperately need to cultivate is a culture that encourages and rewards curiosity. When people are curious, they take the time to learn about the world around them, and why things are what they are. If you don't master the world around you, it masters you.
- internet101010 3y ago>as a result, we've had unbelievable amounts of "wheel reinvention". During the crypto boom I distinctly remember hearing someone say something about creating a decentralized Discord. I was like... that's IRC.
- thfuran 3y agoI guess, if you also remove almost all of the features of discord.
- palata 3y agoNow I wonder if you ever used IRC or if you have a vastly different use of Discord than me.
- palata 3y agoI wouldn't call IRC decentralized, but yeah, all the new messaging systems like Slack/Discord are basically proprietary versions of IRC with only one (shitty ElectronJS) desktop client.
- linksnapzz 3y agoA friend of mine (who coincidentally once shared an office with Vernor Vinge...) remarked to me early in my career that CS programs do a terrible job of teaching the history of the discipline. Students end up not knowing the failures (or even the successes!) of the discipline, and so end up rediscovering old new things. Makes a lot of software and systems practice more faddish and hype-driven than it needs to be.