• 1 Post
  • 931 Comments
Joined 2年前
cake
Cake day: 2024年12月6日

help-circle
  • Don’t take this badly, mate, but you sound like me when I was a “kid” thinking I was truly the shit for all my technical achievements as a self-taught programmer.

    Absolutely, really impressive 1 in a really-big-number kind stuff, just the most pure technical track imaginable and not the same as understanding software development the process as whole, at all.

    Decades later, 3 countries later, several industries later, various different environments and kinds of projects later and all sizes of company later, I’ve figured out that they pay us the big bucks to make software for OTHER PEOPLE, to serve THEIR needs not ours needs and certainly not for our personal enjoyment, though a good dev will always find some enjoyment in cracking complex problems, IMHO - from were a fuckton of constrains and dependencies on what and how you make it and whom do you have to work with are born - and if you want to achieve something that’s great in more axes of greatness than just pure technical impressiveness you need to actually learn how to effectively work in a team and with other teams even non-technical ones, including, beyond a certain point of experience, how to empower other more junior people in your team rather than just be pissed off at how little they know.

    (And I don’t mean going into the Management track, I mean staying the Technical career track and still progressing as a Software Engineer).

    And don’t get me started on the engineering-style concerns of software design around software live cycle in production and how to prepare for expected future directions of change.

    Mind you I’ve crossed paths over the years once or twice with people who never moved beyond “technical excellence” as their one and only metric for software development (typically “rockstar coders”) and they were invariably miserable people who bitch and moaned about “lusers” and how other developers don’t know how to use the (not really properly designed for robust usage by people that can’t read your fucking mind) libraries they made.

    Unless you find yourself a nice niche where you can be a solo rockstar hacker, technical excellence is only a good software development metric up to maybe the 5 years experience mark. Beyond that, unless your career has stagnated you’re supposed to be delivering the results the customers need to the customers and doing so in complex environments in cooperation with various teams, some of whom don’t at all understand most technical language and certain don’t have a fucking clue what “pre-emptive multitasking” means.


  • You missed the documenting the code

    Your words.

    As for your job title, don’t take this badly but “Systems Architect” is not at all the same as “Technical Architect”.

    If you’re actually designing or at least tuning software development processes and coding standards across multiple teams (so, not just optimizing how teams work but also optimizing cross-team work), you’re a Technical Architect.

    A Systems Architect, when the title is properly used, just means that you’re designing software whose operation spreads across multiple platforms (so, for example, multiple tiers in a multi-tier system).

    Also there is quite a range in Systems Architect - knowing how to code in two or more platforms (say, STM32 and some Android, to make a bit of home electronics with a microcontroller be controllable from a smartphone) is not at all the same as knowing how to design a high-performance distributed system running in multiple machines, integrated with multiple external system working for ten/hundred of thousands of client front-ends and supporting things like Distribute Transactions so that any failures don’t leave half-complete operations.

    You can be a Systems Architect and be isolated form most of the concerns of the software development out there. especially if you’re a team of one developing the software side of products based on some marketing person’s idea of what customers supposedly want.

    Unsurprisingly, Technical Architects are non-existent outside large companies and even there they’re pretty rare.

    Again, still making my point on Dunning-Krugger.


  • It says a lot that you think a coding good practice like “documenting things in code” which is at the level of using descriptive variable and function names, should be in the same bucket as structural non-coding processes (which are often entire professionions or very senior professional branches) like Requirements Analysis or Technical Architecture, both highly-complex things (the latter being the very top in seniority of the technical career track) which are non-existent in a formal sense in improvisational (read: amateur as fuck) “programming” companies.

    You’re making my point on the whole Dunning-Krugger thing.




  • That’s a stupidly incompetent way of doing software development.

    If the people upstream are fucking professionals then it would be very rare than the edge cases are discovered at the coding stage since that shit can baloon into massive rewrites and even redesigns (if, for example, it impacts throught to multiple system tiers) which in turn means productivity is shit and the resulting system is a big fucking bug-riddled unreliable mess because of all the going back and all the hacking of “unexpected” (but totally expected if people did their fucking jobs) things into the existing design.

    Further, the constantly ping-ponging of questions up and down the layers during development (especially if at the other end there are business user for whom the software is being made) adds a ton of overhead, not to mention needless waiting periods.

    I bet you never worked with a Technical or Business Analyst or even in a project managed by somebody who was not a reactive “shoot from the hip” manager.

    PS: And, yeah, I’m pissed off just thinking about that crap, because in my career I had to learn the fucking job of Project Manager, Technical Analyst and even Business Analyst after I figured out A LOT of the unecessary problems, blown up deadlines and stress I was getting at the systems design and software design levels were the product of that part of the work not being properly done or at all, so that shit you’re describing as if that was the normal way of doing software development really makes my blood boil - by my professional standards that shite is amateur hour, every hour of the day, every day of the month, every month of the year.


  • At that point it’s basically Maths - things like the Travelling Salesman problem - and the people going after such “programming” problems are actual Scientists and even then the problem is not in doing what AI does - writting the code - it’s knowing the logical solution which then determines the right code to write.

    So your what you say doesn’t really contradict the previous poster - some of the brightest engineers and academics in the world have spent years working on problems - so figuring out what’s the right code to write - not actually in writting the code.

    I suppose the only point of conflict is were the boundary between “programming” and “maths” is - if one think of it as “writting code” then both of you are saying the same.


  • That style of software developer used to be called “monkey coders”.

    Employing “monkey coders” because they are cheaper is a great way to end up paying a lot more money over the long run because their work is unmaintainable, ureliable, not robust and stupidly hard to be upgraded to implement new requirements.

    Which, if you think about it, it’s pretty much what you get with AI code.

    And yeah, totally agree that these are the people who are most threatenned directly by AI at the moment. Then again, they were the ones most threatenned by outsourcing already (to India especially, since when they grew massive as an outsourcing place for software development they started hiring tons of people there who had no skill whatsoever for it and would never have gone into software development and were pretty bad, so most coders based in India were eventually this kind of code writter).

    Hiring “monkey coders” was always the product of bad management: they looked good on paper - cheap, made lots of code, bums on seats, often the kind of person who worked long hours (which in low efficient management cultures makes a manager look good because of “making their people work hard”) - whilst creating massive costs spread over time and hitting everything from production downtime costs to future system improvement costs. In some ways the mass replacement of developers with AI is born from the same management incompetence as outsourcing, which is probably why it is hitting the US so hard.

    Which brings us around to how, indirectly, even good software developers are right now threatened by AI - the kind of incompetent manager who thinks code lines is a productivity metric aren’t replacing just “monkey coders” with AI, they’re cutting down head-count with no selectivity or even replacing first the more professional coders because they’re the most expensive.

    This might not be sustainable in the mid and long term because AI, like “code monkeys”, just piles up massive less obvious over-time costs on software systems (I expect a lot of companies will go under from this shit) and some are already getting desperate for the kind of professionals that can fix their self-inflicted AI problem, but people who aren’t prepared for up to two years of being out of well paying software development jobs (so, most people) are getting screwed instead of aligning themselves to really profit from the wave of post-AI “oh, shit or systems are unreliable shit” work for senior types that’s just starting, plus if indeed as I expect companies will fail due to this, the Tech boom will be over and there will be fewer positions than there were 2 or 3 years ago.


  • Writting the code was never the hard part”

    It’s figuring out in detail what the program is suppose to do (i.e. Requirements), how it can and should do it given the technical constraints of the available deployment environment and performance & reliability requirements (i.e. Technical Analysis) and how it all gets structured from the highest level to the lowest level so that bugs are minimized, performance is suitable with the appropriate margin to absorb expect unexpected problems and costs for maintenance and future requirements implementation are low (i.e. from Technical Architecture and Systems Design down to Software Design) that are hard.

    And I say this as somebody who has done all of those professionally, plus the coding (oh, so, so much coding) for systems of all kinds and sizes in various countries and industries, including some mission critical high performance distributed systems (which if they failed would have cost millions of $$$ in lost business income).

    Fly by the seat of their pants coders who have never worked in a properly professional environment have no fucking clue just how much more there is to it than “coding” to go from no software at all to “reliable and robust software system that serves existing business needs”.

    A lot of “coders” are like I was in the beginning of my career: they think they’re the shit, know nothing but a very limited range of work environments which they think “that’s how things are done” when those environments are actually, amateur hour, every hour of every day, every day of the month, every month of the year - they’re basically at the peak point of the Dunning-Krugger curve for software development knowledge.


  • Remember the audio cable that had to be installed inside from the CD player/burned to the motherboard?

    If you didn’t install that you couldn’t actual hear the music from audio CDs (which had a different format than data CDs) because it was the player itself processing on the fly the audio tracks like the in the standalone audio-only CD players, rather than it coming in as data to the processor (this was probably done like that because the processors back then were pretty weak plus PCs didn’t have that much memory and audio CDs had the data in PCM format, which is not compressed, so we’re talking tracks of 90MB in systems with less than that in memory).


  • Amongst other things it dependend on the country.

    As a kid in 1980s Portugal, I used to go to a store selling software for the ZX Spectrum (which loaded the software from audio tapes) where the guy just had a bunch of tape copiers and would copy the game as you waited. This was in the outskirts of Lisbon, so hardly an out of the way place.

    Good thing too - that’s how I got my hands on an Assembly compiler and decompiler (this was before the GNU tool suite) and really started my way into programming.

    So it was de facto legal enough that somebody could have an actual store doing it.



  • You can get a cheap Android TV Player for about $50 that will connect to your TV via HDMI, connect to your network via Wi-Fi or even Ethernet (I suggest you the latter if you can - much better performance, no hiccups if the Wi-Fi channel you’re using is also used by a lot of other stuff) and play any MKV videos it can access on your network (so, for example, you could share them in a Windows share).

    This is kinda the setup I had maybe a decade and a half ago (only back then they were called TV Media Players and it was before Android).

    You can get a TV Stick which is sorta the same but smaller, hangs from the HDMI port on your TV and those never have Ethernet.

    You can get any of the hardware supported by LibreELEC - the cheapest being ARM-based Single Board Computers like Raspberry Pi or Orange Pi - and install LibreELEC in it and use that. Basically works like the Android TV Player only less bloated and you control that device fully.

    Personally I now have an N100 Mini-PC on my living room with Lubutu (I installed Lubunto because I thought that it would be too little PC for a more normal distro, but frankly that thing can run a normal distro just fine) with Kodi always ON and on front (so from the TV side it just looks like a Media browsing and playing interface). The reason for having a bit more generic hardware there is that the machine is ALSO my Torrent server (with QBittorrent, which you can remotey add torrents to from your personal PC using a browser plugin and remotely manage from a browser) AND it’s also my home NAS (so, same place were the media files end up stored).

    It’s connected directly to my router via Ethernet so it downloads and uploads at 1Gbps. I generally manage it remotely via SSH from my own PC and have a wireless remote for it (which works just like a normal remote, except that you can’t use it to switch the machine ON, only OFF, plus do other buttons just do the normal play, stop and all the other standard functions in Kodi) so for using it as a media player in my living room it works like a dedicated TV Media Player or a Smart TV and doesn’t at all look like there’s a PC in my living room connected to my TV, but I have full control over what’s running there and it isn’t selling my personal data to anybody or shoving adverts in front of me.


  • That’s actually not especially good in the EU as far as I can tell (also in the EU, have the same, €15 a month).

    That said, it’s pretty easy and cheap to get the rest of one’s setup (router, Ethernet cables, the actual torrent machine) with Gigabit-Ethernet so that it all actual works at 1Gbps end-to-end but costs a bit more to upgrade one’s internal network and download machines (I use a MiniPC next to the router) to go above that - everything pretty much supports 1Gbps by default nowadays, whilst only some stuff supports 2.5Gbps, and you definitely have to pay quite a bit extra for 10Gbps.

    The kit I had for years already supported Gigabit Ethernet all the way and I would need newer kit to really use properly a fibre Internet connection above 1Gbps, which is why I personally did not go for the 2.5Gbps or even 10Gbps (the latter would be €45/month). That and downloading an x265 1080p torrent of a 1h episode of a TV series from a popular public tracker taking between 30s and a minute is good enough for me and I don’t really want to spend more money to bring that down to 10-20s or less.




  • Modern Neoliberal Politics, both the “center”-Right and the “opposing” performance of “center”-“Left”.

    Whilst politicians, the media and (ideally for them) the public opinion are talking about gender minorities’ access to toilets, they’re not talking of wealth inequality, the lack of access to housing and general empoverishmnt of young people and the “World-beating” bad management of Britain for the last 4 decades (especially since 2007, extra specially so since the Leave Referendum).

    The more politicians talk about moral subjects and scapegoat foreigners (“immigrants” when performing a “Right” character, “foreign interference” when performing a “Left” character) for a country’s mismanagement, the more they’re hidding how much they’re mismanaging the country when it comes to what affects everyday life for most people, be it because those politicians’ only real competence is in managing appearances and deceit or because they’re only really motivated by the rewards they will get from the very rich friends they make by making laws and managing the country for the benefit of very rich, very thankful people (and screw everybody else).

    TL;DR - this shit is just yet another Act in the Theatrical Production which is mainstream politics in Neoliberalism and its purpose is to entertain people to make them forget that the purpose of elected politicians in Representative Democracy is to Manage a country well in the interest of their voters, not to be Improv Thespians for the entertainment of the masses.


  • What a spectacular display of how the right wing posh cunts in the UK are little more than unthinking morons (in the technical sense of “moron”, even) who barelly managed to learn a posh accent and dress code in whatever £40k/year public school they attended.

    Not only did it took a quite a lot of explaining INCLUDING at the end repeating some things in a “For dummies” short format to get that posh cunt to understandstand the problem, his reaction makes it painfully obvious that he didn’t even thought about things properly until that very moment.

    I lived in the UK for over a decade and came out thinking that the country is profoundly and structurally anti-Meritocratic.



  • Aceticon@lemmy.dbzer0.comtomemes@lemmy.worldDr. Thanos, PhD.
    link
    fedilink
    English
    arrow-up
    11
    ·
    edit-2
    5日前

    The absence of their influence in Politics will make a massive difference.

    The resources captured by the rich are probably a far smaller part of the problems they make than how they use the money they have to shape Politics and Public Opinion (via the Media they own), hence policies, hence the way our society and economy operates to maximized their own wealth.

    Most Overconsumption and Negative Externality problems (both things that serve to maximized the profits that end up in the hands of Asset Owners and both the kind of thing that most damages the Environment) could be legislated away, but there is no will and there is no will because the politicians and the media are bought by those who benefit from things being as they are, and they are bought because those people have lots of money to buy them with.

    Take the power to buy politicians and deciding what the press puts out away from the rich and all of a sudden profit-reducing pro-Environmental policies are not just politically acceptable but even demanded by public opinion, and given that said rich people would never give up on that without a massivelly destructive fight (literally Revolution), the safest and best option for about 99.9998% of people (8 billion minus 10,000 out of 8 billion) would probably be that a handful of rich people just die.