Live data from Hacker News

Software Developers Should Have Sysadmin Experience

blog.professorbeekums.com

411–420 of 424 posts

Re: Software Developers Should Have Sysadmin Experience

#411
post #388

Earlier quoted context omitted.

I said it elsewhere, but personally I'm a Debian stable evangelist. There is one major upgrade every 2 years or so. It often goes without friction. The rest is mostly security updates. Breakage between major upgrades is very rare. I don't think this thread is about "maintaining a modern code base" at all. Whatever that should mean -- My impression is you've fallen victim to the hype train. In my perception the thread…

> I said it elsewhere, but personally I'm a Debian stable evangelist. There is one major upgrade every 2 years or so. It often goes without friction. The rest is mostly security updates. Breakage between major upgrades is very rare. That's fine for an OS, but what do you think business customers would say if you said "sorry, that feature won't be added until the next release in 2 years time"?. That's were tools like…

what do you think business customers would say if you said "sorry, that feature won't be added until the next release in 2 years time"?

We say that all the time; we have a two-year release cycle. And in our field (aviation) that's considered breakneck.

Re: Software Developers Should Have Sysadmin Experience

#412
post #39

Earlier quoted context omitted.

I've worked with all kinds - from windows devs who can't figure out how to install visual studio - to people who understand Windows, Linux, and macOS - as well as basic system administration for each platform. The people who are most successful at rapidly developing good high quality software are more in the later group. Would you trust a RF engineer who couldn't troubleshoot his own radio designs? why would you trou…

I recently questioned someone about this very subject. They wanted to hire a "CSS expert" because the "developer" didn't have a grasp of css after having developed the project in JS/HTML. I was so confused as to how that's possible.

CSS is not consistent and complete like a programming language. As someone else mentioned, doing things the correct way in CSS (responsive, cross-browser) is actually very hard, and often requires memorizing weird hacks.

Re: Software Developers Should Have Sysadmin Experience

#413
post #393

Earlier quoted context omitted.

> Well for me, all of the libraries I use because none of them exist as packages for any OS. In conclusion you don't use any libraries that are packaged for any OS. What libraries? Also assuming that some libraries you use don't exist for your OS, that doesn't mean that you absolutely need the latest and greatest in a business critical way. So, not approved. All in all, not too fond of the reasoning and the evidence…

Your logic would prevent any app from just about any non-c ecosystem running. Java, ruby, python, dotnet, rust, go, they all have their own library management and very few of those libraries will be available in an apt repository (let alone a compatible one). Your policy may work in a university, but you'd be fired from any real business.

> Your policy may work in a university, but you'd be fired from any real business.

Nah. If we define "real business" as something with a decent turnover, employing over 250 people, and being in business for over 8 to 10 years; a business that isn't actually in the business of writing software (the majority of what makes up global stockmarkets, or "real business" in most peoples' eyes) then you will find that OP's attitude and policy-making philosophy is right on the money. (Source: Was CTO in exactly the above type businesses for many years)

Re: Software Developers Should Have Sysadmin Experience

#414
post #398

Earlier quoted context omitted.

You are still not providing evidence. You're also making bold claims ("any app from just about any...") that my personal experience can just not validate. It's very easy to write applications without fancy dependencies. Recently I did algorithms, systems and applications in C, C++, python, sdl, alsa, X11, Unix shell scripting, lp_solve, and some web programming in python, javascript, sqlite3. All rock solid and stabl…

.net MVC, nUnit 3, jquery, knockoutjs, and nHibernate to name a few. I could name a dozen similar tools on the java stack. Pretty soon I'll be experimenting with rust with libui. >There are 2050 python3-* packages on my system. Not that I think it's a good idea to use most of them. What's "compatible"? 2000 of them are random versions someone made a package for that are unknown to the core team and probably not recei…

> There are no compatibility issues because we develop on ubuntu and host production on redhat.

Sorry, but that is a hilarious argument, almost straight from Gentoo is Rice: https://fun.irq.dk/funroll-loops.org/

Re: Software Developers Should Have Sysadmin Experience

#415

Earlier quoted context omitted.

Honestly, I've heard worse out of sysadmins in some places.

Question: What must go wrong for a build to be 180x slower on a server than on a laptop?

Overcommit of resources, causing near constant thrashing to disk.

Re: Software Developers Should Have Sysadmin Experience

#416

Earlier quoted context omitted.

Process engineering (~manufacturing) and logistics (~supply-chain) are not dissimilar to modern software workflow. The basic tools (modular management of complexity, discrete processing, statistics, monitoring, redundancy in processes/providers, feedback) are equivalent. In fact, I feel like a huge part of a successful software career is learning to see the similarities in disparate fields and draw from them positive…

Well that is certainly correct but it should be pointed out that one can say that about most organized (psuedo-)industrial production endeavors. But it seems incorrect to posit that that is the 'defining' characteristic of software development. > In fact, I feel like a huge part of a successful software career is learning to see the similarities in disparate fields and draw from them positive architectural benefits,…

I like your semantic gap notion, however I am less convinced that overall mutual comprehension is the issue but rather the different issues of clarity of expression of vision (at the earlier/design stage), or clarity of interface (beginning at the implementation stage).

By way of example, there are many successful artistic projects that utilized the talents of multiple artists in parallel (lots of murals and mosaics, for instance).

In larger scale computing projects, frequently the (mechanics of the) interfaces provide bigger problems than the vision statement or overall goal, whereas in artistic projects indefinable aesthetics may be the shopstopper, despite perfect comprehension and collaboration.

Re: Software Developers Should Have Sysadmin Experience

#417
post #120

Earlier quoted context omitted.

> I mean, it's not as though if you're going to drop one of the two groups of people it's going to be them going I'm sorry you've had such an awful experience with sysadmin colleagues that you've developed such a corrosive attitude towards them. I've worked in lots of good environments, where dev/ops was being effectively practiced, and sysadmins there were the most effective force multipliers imaginable.

> awful experience with sysadmin colleagues that you've developed such a corrosive attitude This is going to be a sensitive topic, but can we talk about ""BOFH"" culture somewhere on this thread? (Maybe I'm old and it's now dead, but I think some of it persists) I kind of understand it as a product of working in an environment where everything is urgent and nothing is appreciated, but when sysadmins come to resent th…

> Sysadmins develop strategies for reducing the number of requests at any cost, usually by making the experience as opaque and unhelpful as possible.

This is sometimes an organizational problem. I worked in a support role at VMware for about 5 years and this is what I observed:

- Support & IT departments typically have enough staff in the beginning

- The organization grows & the department grows to match the new work that exists

- At a certain point, the organizational view of Support & IT/Ops changes, and it's now viewed as a cost that you want to keep down.

- Leaders try to minimize the increases in budget, but the workload per sysadmin/engineer increases.

- The sysadmins/engineers have no control over the flow of new work, which effects the quality of work that gets done and can create a toxic environment.

It literally becomes impossible to handle all the incoming requests. Different people handle it differently. Good sysadmins would learn to prioritize properly, but due to the toxicity some people have trouble handling it so they end up developing strategies to make a certain number of requests "go away".

Anyway- just my two cents.

Re: Software Developers Should Have Sysadmin Experience

#418
post #120

Earlier quoted context omitted.

> awful experience with sysadmin colleagues that you've developed such a corrosive attitude This is going to be a sensitive topic, but can we talk about ""BOFH"" culture somewhere on this thread? (Maybe I'm old and it's now dead, but I think some of it persists) I kind of understand it as a product of working in an environment where everything is urgent and nothing is appreciated, but when sysadmins come to resent th…

> Sysadmins develop strategies for reducing the number of requests at any cost, usually by making the experience as opaque and unhelpful as possible. This is sometimes an organizational problem. I worked in a support role at VMware for about 5 years and this is what I observed: - Support & IT departments typically have enough staff in the beginning - The organization grows & the department grows to match the new work…

The SOLUTION to this problem is multifold:

1) Leadership: Stop viewing the IT/Ops/Support department as a "cost to keep down".

2) Leadership: Treat the department like they are manned by people.

3) Realize that not all requests are created equal. Some take minutes, some take months.

4) Determine a reasonable number of requests/tickets per sysadmin/engineer. Make sure to add padding for things like project work, sick time, vacation, professional development, and so on.

5) Hire proactively to prevent the determined threshold above from being surpassed.

6) From the IT/Ops departments perspective: realize that the incoming requests are coming from people that need your help and they are effectively your clients/customers. Treat them as if customer satisfaction is extremely important!

There are also other strategies where you give a subset of people the ability to work on projects and designate a different subset to be interupted with urgent requests, and rotate the role. There are all kinds of things you can do to improve the situation :)

Re: Software Developers Should Have Sysadmin Experience

#419
post #199
post #105

Earlier quoted context omitted.

AMEN!!! In my current job, I am wearing both hats, and while I like that there is a certain variety in my work, users calling for help is highly disruptive when programming or doing some other stuff that requires deep focus. The upside that in a three-person IT department there is very little bureaucracy to fight, just the odd "organically grown" legacy system.

As an aside, did you know that the word "Amen" actually is a acronym in the Jewish language that means "El melekh neʾeman" (or AMN) which translates to "God, trustworthy King". (source: https://en.wikipedia.org/wiki/Amen ) I figured the etymology of that word was rather interesting. But yeah, I get the whole SysAd/Dev dual job. They're tough to balance and do effectively. SysAds are firefighters. When the nag(ios) al…

The fact is that nobody really knows. Talmud was written in ~200 BC and is an exegesis. Egypt is the elephant in the room of Hebraic history. It is possible it is an Egyptian loan word just like Moses -- "born" from water -- is an Egyptian name.

Re: Software Developers Should Have Sysadmin Experience

#420
post #50

This might be controversial, but I don't think you get to be a half decent developer without being a reasonable sysadmin. Maybe my experience is unusual, but I've never worked anywhere that the sysadmins knew more than the developers about how best to run their code in production. And when things go wrong with it how best to find the cause of the issue. And I've never thrown code over a wall without having tested it…

Sysadmins are, 99% of the time, responsible for production uptime. Sadly, management includes all of the software being written in-house in this expectation. Change means instability, means that Sysadmins' feet are held to the fire - this makes them resistant to change. Software developers, on the other hand, are responsible for making changes. Adding features, pushing fixes, and so forth. These two points of view ar…

In 1997 when my code first started running in Live I was given a pager and told welcome to Ops. Every piece of software that company had a single dev name easily read out from the binary and used to contact when trouble occurred.
Post reply on HN