I also stopped arguing, I don't waste energy or my focus on random stuff, did happen with the age I think... unless... unless it's my wife or my mum who is wrong. If I think I'm right and they wrong, I will argue with al my energy. Of course!
HN user
txutxu
Not native. I'm from other planet.
I never did choose any single thing in my job, just because of how it could look in my resume.
After +20 years of Linux sysadmin/devops, and because a spinal disc herniation last year, now I'm looking for a job.
99% of job offers, will ask for EKS/Kubernetes now.
It's like the VMware of the years 200[1-9], or like the "Cloud" of the years 201[1-9].
I've always specialized in physical datacenters and servers, being it on-premises, colocation, embedded, etc... so I'm out of the market now, at least in Spain (which always goes like 8 years behind the market).
You can try to avoid it, and it's nice when you save thousands of operational/performance/security/etc issues and dollars to your company across the years, and you look like a guru that goes ahead of industry issue to your boss eyes, but, it will make finding a job... 99% harder.
It doesn't matter if you demonstrate the highest level on Linux, scripting, ansible, networking, security, hardware, performance tuning, high availability, all kind of balancers, switching, routing, firewalls, encryption, backups, monitoring, log management, compliance, architecture, isolation, budget management, team management, provider/customer management, debugging, automation, programming full stack, and a long etc. If you say "I never worked with Kubernetes, but I learn fast", with your best sincerity at the interview, then you're automatically out of the process. No matter if you're talking with human resources, a helper of the CTO, or the CTO. You're out.
No icons in my desktop (window manager, fluxbox). It's the UI I'm used since... too many years to count.
Custom keys to launch the most used apps.
Alt+F2 to launch less used apps.
And... the big star... one of my reasons for stay in fluxbox for so many years, the custom menu (right click anywhere in the root background, left click in the corner of the toolbar, or custom key to launch the menu).
Custom menu that can make includes, oh yeah, can be updated via cron/systemd-timer/scripts, etc so you can have a hierarchical menu to all your machines, by project, by datacenter, by service, IPMI, ssh, remote desktop... always up to date (i.e. from ansible-inventory). Or you can have your browser boomarks in the menu (with the same folder hierarchy). Or you can implement your own RSS in the menu via cron. Anything you can imagine.
For me, hierarchy > 2D positioning, and "desktop" != root folder for any "data".
Last step of my weird, non mainstream setup, is the all my data is not in my home, but it's in /data/myuser (in a partition separated from the OS), in folders like backup, docs, downloads, media, src, vms which are linked to my home. All dot files that I care are under my custom config management system (sh script + git), and all the data is in /data (+backups). Why I mention this? it's on topic... some apps try hard to use the "desktop" directory. So I have this bit just for them:
$ grep DESKTOP .config/user-dirs.dirs
XDG_DESKTOP_DIR="$HOME/docs/desktop"
Because why the hell a browser need to mkdir ~/Desktop or ~/Downloads for nothing.My app launching shortcuts/menu are very well organized and optimized. My data is in /data. I live without the "desktop is everything/anything/chaos-thing" seen in many people machines, and I'm happy.
When I've used other's OSs with a desktop full of icons, I dislike specially not being able to make the exact placement because of auto alignment.
If I used desktop+icons, would like something like diagramming apps: "Let me place things exactly where I want, but, let me align groups of selected items, horizontally and vertically, via context menu/shortcut when selected".
Debian can run with SELinux if you like that.
Debian uses AppArmor by default, probably because of the Canonical influence (there are more Debian developers and maintainers paid by Canonical than by RedHat).
But you can run Debian with SELinux (as well as with other LSMs, MACs, etc like Tomoyo).
At my last jobs, we disabled any of SELinux, AppArmor and Auditd on Debian/Ubuntu, just for the sake of performance. And we never detected any security issue for our usage and requirements. So I'm not an expert in this field.
Not sure what the purpose of the article, or the whole blog, is. You want to influence the choosing of Debian Vs RHEL Vs Oracle Linux in some place? As I'm not sure, will stop here.
Not sure if call it mental or physical organization, but there is more crossing out of words and whole sentences, words that I try to fit into small spaces, or arrows to/from outlined areas below with more space. Like:
+--------------+
| abcd abcd a |
| bcd abcd.--\ |
| | |
| efgh ijkl | |
| ijkl m nnn | |
| | |
| +-------+
| | abc a |
| | abcd |
+------+-------+
A technique that I don't know what to call, is the horizontal brace. Like the ASCII 123, but horizontally, to insert something between two words, above or below the line.A handicap of the notebook, is that you can't find historical data/names/dates so easy, or synonyms... but as I iterate a few times over the text after the first draft, those gaps can be fixed latter while typing the text.
Sorry, edited to clarify. I mean avoiding AI.
Mainly I use vim. But yes, sometimes I also use a traditional notepad with a soft ink pen. To avoid myself some screen time, because I'm out of home, or just to make some use of it.
I think the output flow is about the same using pen and paper than using vim, at least for me.
The original "By hand" did mean "without AI help/inspiration".
I'm writing a book. A novel. By hand (this is, no AI involved, just me and vim).
Sometimes I feel I'm loosing the time, because nowadays there is a lot of AI generated content and even more competence in self-published books.
After a long walk against myself, of about 10 months, it's nearly finished (in my native language, Spanish). It still needs a few more reviews and retouching.
I got recently unemployed after +20 years as Linux sysadmin, and my wife is now unemployed too (after +20 years in HHRR), fortunately we have still a few savings.
I dream that it will (economically) work, but most of the time I intuit there will be less than a few sales from family and friends.
Depending on how it goes, I've already the script for the second and third parts.
In parallel I'm researching different ways to generate cash flow without working for another person. I would like to avoid going to search for a job in the current market of cloud, docker and kubernetes, as I'm more a hardware/colocation guy, and 99,9% of job offers request for docker/kubernetes.
It's wrong.
3500 in -> go to parents house -> 1000 into bitcoin
-> 100 into speculative coins on bull market, or making sorts in bear markets
-> 300 into gold
-> 600 to stocks with dividend growth
-> 400 to real state or REITs
-> 200 to speculative stocks
-> 500 to your bank account (with some interest)
-> 200 to cash, for those days you go out of your parents home
-> 200 to presents for your parents
If your parents complain, give them the money of the presents, part from the bank account or from the speculative stuff, to silence them.Repeat and reinvest benefits into non correlative actives.
Once you reach a balance of ((90 years - your age) x 12 months) * (3500 * N), maybe you can leave your parents home (not mandatory), and try to race with your yearly benefices, against the *real* inflation. N is a magic number, to cover the compound inflation during all those years, without penalizing too much the first years.
Maybe next year 3500/month is still ok, but in 30 years it won't.
If you're over 70's, do not follow this advice, take the 3500 and live la vida loca each month. Like in the "latin" song from the country that did never ever speak "latin".
Have a nice day.
Now seriously: The real important stuff when working with budgets, is to "see" the "estimate Vs real" thing.
Reminds me of those monitoring dashboards printing lot of unexpected output from checks, which in turn doesn't expect not being able to interact with state files on a read-only filesystem, reporting the wrong state (i.e. critical instead of unknown), etc.
More fan of agents and an HA core for monitoring, than from direct push notifications, but still, used this smartd notifications like 15 years ago in Debian, and never realized of this issue (maybe because once the OS disc fails, we cared more about other issues than about the smartd notification).
Those were the years were you could try to put the mechanical disc in the fridge for some minutes and try again, or with some Seagate disks, change the electronic circuit for other disk of the same model and recover the data (they used to fail in the electronic part more than the magnetic plates).
If my ISP gives me 10 Gbps, I want my PC to have (at least) a 10Gbps single path to the router.
So, If I already have a 10 Gbps path to the router, I don't want to add a 300 Mbps failing air path added to my way to the router.
In the context of the parent (at home networks), I think most people has two paths... WiFi or RJ45-UTP. And with that multipath setup (WiFi + RJ45, I don't get why other comments are talking about cellular networks "at home") is not usual to walk away; right, you could walk, as far as long is the rj45 cable, but...
To keep HA on WiFi when walking around, there are other technologies more battle tested than MPTCP.
At home/lan we use LACP, VRRP... I mean link aggregation and HA needs are solved time ago.
With multiple ISPs, or on a complex enough LAN, we can use multiple routing tables + weights too.
Also, if the ISP at home can do 10Gbps, 1Gbps, 300 Mbps whatever... I want to be able to use them with a single path, so there is no gain using multiple paths. Eventually, when I have cable+wifi connected at the same time, I use to force one of both, cannot see a reason to prefer using both at the same time.
Maybe the latency thing? Never had that issue at home, but could understand that usage case "just use the network segment with less latency to reach $thing".
I like to say that Ansible is a CMS (Configuration Management System).
For me, infrastructure as code, is another thing. The things you can "touch" with your hands.
How do I get a new physical rack, new server, new router with a new IP range, new switch, plan or segment the network layout(s), how do I connect the cables, how do I add disks, how do I install Debian, etc. As code.
For Hosting or Cloud providers, Iac (Infrastructure as Code) is easy. They need pools of resources already deployed, waiting for you, and an API.
For home... it doesn't make too much sense to have pools of public IP ranges, pools of datacenters, racks, routers and switches with SDN capabilities (Software defined network) servers waiting, storage servers waiting, load balancers waiting, and 200x software X/Y waiting...
Maybe the most similar thing of IaC you can do at home, is a PXE install server.
Or, enter the vIaC concept, Virtual Infrastructure as Code?
That you can do, you can define as code switch VLANs, Virtual Switches, Virtual interfaces, DHCP/NAT/bridge, etc, Virtual Machines, Virtual disks, Virtual Hosts (in balancers and webservers already running), and of course, you can cosplay IaC with containers, qemu, etc.
Ansible excels in the area of *configuration management system*. I want X part of the operative system (user, file, package, etc), to be in this state, and I wan to track how it evolves over time, ensure that it continues in such state, or analyze the delta.
IaC -> helps with things that previously were done with the hands
CMS -> helps with things that nobody can touch with the hands, and run inside IaC elements
In short, the CPU is trusted and creates...
Here it comes the main bug.
If the data is so confidential, let's say for example "the military plans of a country, or ultra-secret technology" I don't know, I could not use a public network, or a provider that mixes it, in their infrastructure, and/or that has it's own employees.
Recently, I got a laptop and saw an option in the BIOS about Intel SGX (enable/disable/auto). After a short research, was terrified: a source of security BUGS, deprecated for Intel Core (but continued for Xeon in the cloud).
We don't need to talk about past and present hardware bugs (or software bugs and attacks), but let's put it in clear:
If some kind of data shouldn't go out, do not put it out, in the first place.
If the data should never go out, the network should be physically separated and isolated at physical level, from everything.
Otherwise, I don't know... not working with such things, but I could use incompatible custom tech at least; no something so easy to get by an adversary, read, use, study, reverse, fuzz and attack without my knowledge.
Cloud+Enclave "sounds" as secure as those "Third party VPN". Let's say your trust model is thrown to the bin, and start talking from there.
The P in VPN has been perverted long time ago.
Also non-colonizer Europeans, for the same religious reasons, did burn more knowledge (and persons) here, in their own towns.
Most of the history that we got, is what those ancestors did leave in their writings.
Today the inquisition simply consists of our beloved governments, covering up their dirty dealings, and telling a different story in the media, media dominated to the most inquisitorial extreme.
At least in Spain, videos are deleted, the monetization of certain channels on social networks is cancelled, forwarding of certain content on WhatsApp is rate-limited, and today, Telegram is closing in Spain, while all the ministers, the president and their families are involved in continuous corruption scandals, forgiven by judges who have been put in position by the same politicians.
Politicians forgiving the robbery of politicians, while TV only talks about the color of the air (if they don want to be reported and economically punished).
Journalists without a journalism career, who only look with a magnifying glass to the families of the monarchies, but totally forget forever about the families of the hundreds (thousands?) of Spanish politicians and ex-politicians.
Journalist without a journalism career, who try to tell us that life has increased a 6% (hello, do you mean that what previously did cost 1 Eur, now costs 1 Eur and 6 cents? where? basic education mathematics, please?)
The same supposedly lefty politicians, who criticize priests, are worse than priests, in this inquisitorial sense.
Something I ask myself... if the history that we got, was what the priests did write or didn't burn... what history will get about us, people in 500 years? That lies published in the media? 24 different versions of the same fact? Nothing at all if it's about ministers stealing public money? Whatever the generative AI tells them?
I often read this, and I'm not sure I agree always. From the final user point of view, sure, give me a known language and don't make me learn a new config format for each program. 100% Agree.
But, now, let's go with examples from another view point:
Let's say there are different levels of support teams in an infra, and you (root) make a custom tool, so other teams can run something (and only that thing).
And that thing, has a config file. I don't want to give sudo to lua, I want to give sudo only to my tool.
It's like if we say "Don't provide the final user with a User Interface, just let them connect to the database as admin so they can do everything by themselves"
In this case, doesn't apply (sudo tmux == sudo bash).
Or another point of view:
tmux is 981K on my system, adding... lua? for the config, could increase it's size by maybe at least 30%? It's not the same to add an scripting lang to a 230GB game, than to every little tool.
Depending on context, an scripting language is ok. However, not always as a rule of thumb.
Booting a modern laptop, something I do every day, is the anti-low-tech paradigm.
Just my motherboard BIOS is 50348032 bits. And it doesn't provide many options, I think the other way around, it hides many options on purpose.
Then there is an i7 processor... a whole beast itself against simplicity. With its Intel Management Engine, it's microcode updates, etc.
Secure boot? UEFI? VT extensions? TPM? NFC? graphics initialization?
OK, so far, we've code and material to fill the whole life of an engineer, and we didn't reach still the OS bootloader.
Ah, the bootloader, who remembers lilo... here we go with grub. Go read it's source code, and return back to explain me everything that is in there... see you in 3 months only for this.
Here it goes, the kernel. A thing that normal users don't see or touch. More than 30 Million of lines of code more. I won't talk about complexity here, but this project can really say it's "batteries included". The same you get an old obscure filesystem/protocol nobody uses, than proc/mem/i-o/netowrk schedulers for supercomputers. Blobs, firmware, more graphics stuff, observability, wifi, storage, a whole word in itself and everything comes up in microseconds.
There is such initram thingy, which is another "mini" (not mini in lines of code) operative system. Busybox? xD look at that.
Now, here it comes... the low-tech king: systemd! our love-hated init system (only init? well you already know).
Now, here we can start the operative system (which may not bee too simple), we could be talking for years, of each of the micro-components that help to launch the base OS services until you get to the login page.
Depending on the distro... we're skipping a hell of complexity (it's not the same the ps aux of an ubuntu desktop, than the ps aux of a minimal system). Let's skip it, let's skip hundreds of software components and phone home stuff.
The auth part, gives for a few years more of reading code, talk about, skipping plugins and optional stuff.
Then you can get a window manager or a desktop environment (so a week or some months of code more), running over Xorg (do you think it's simple?) or Wayland (you can devote your life until you own this part).
And now... let's launch a "web browser". I will stop here, we won't finish if we go deep into the browser complexity.
Modern hardware, software and engineering, are a big ball of snow. The more it advances, the bigger and out of control it gets.
I think this issue is not specific to containers.
I've work many years on bare metal. We did (by requirement) acceptance tests, so we did need deterministic builds, before such thing had even a name, or at least before it was mentioned as much as nowadays.
Redhat has a lot of tooling around versioning of mirrors, channels, releases, updates, etc. But I'm so old that even foreman and spacewalk didn't exist, redhat satellite was out of the budget, and the project was migrating from the first versions of CentOS to Debian.
What I did was simply use DNS + Vhosts (dev, stage, prod + versions) for our own package mirrors, and bash+rsync (and of course, raid+backups), with both, CentOS and Debian (and our project packages).
So we had repos like prod/v1.1.0, stage/v1.1.0, dev/v1.1.0, dev/v2.0.0, dev/2.0.1, etc Allowing us to rebuild things without praying, backport bug fixings with confidence, etc
Feels old and simple, however I think it was the same problem/issue that people gets now (re)building containers.
If you need to be able to produce the same output from the same input, you need the same input.
BTW about stablebuild: nice project!
Unless the machine specifically handles this scenario, this can artificially wear the battery. Newer MacBooks handle this better with "intelligent" charging (I couldn't say for sure whether a 2012 MBA would have had this feature), but I don't know about other brands.
Yes... this is why I did use to take it out in old laptops while not moving from the desk.
With my thinkpad, I used to do:
sudo tlp setcharge 60 95 BAT0
This means: "start charging when level is 60% and stop charging when it reaches 90%"But the real answer here is that batteries are essentially consumable parts. They won't last forever, and once it drops below holding ~80% of the original charge, it's worthwhile replacing it.
Indeed, probably for the extensive use I do, it's normal to do not pass the 3 or 4 years of good conditions.
Can you point to an example?
Without context... maybe:
1) Maybe they aren't from america.
2) Maybe they haven't see clearly how they will save/earn with the software more than it costs (marketing issue?)
3) Maybe it's explained in their complains
It's an experience, some things give more issues, but other things are better and other just different. Documentation consistency, source code availability in the base install (recompile/optimize the OS gentoo style with a few commands), packet filter, following the whole FAQ, discovering the community blogs and IRC channels, etc
Many years ago, on my own house, I started as:
ISP modem -> all things in one VLAN (1 switch segment)
Then I added: ISP modem -> Linux router -> Separated VLANs (home servers, LAN, WiFi, TV, games, etc)
Finally I did: ISP modem -> OpenBSD -> Linux firewall -> Home VLANs (LAN, WiFi, TV, games, etc)
-> Home servers
One more hop, but I did think "If someone wants to enter from the outside, will need to exploit 3 layers of TCP/kernel implementations, and switching VLANs, instead of one layer".Really it was more an excuse to do things and learn... anyone can be attacked if targeted, even with 10 firewalls in front. Just by clicking a link, rendering a font, a PDF, etc... Nowadays I've moved to much, living rented and I only have a personal laptop (and one for job when provided).
I'm not following the project to much, my only experience with NetBSD was to bring back to life an i486 laptop with 4M of RAM, many years ago.
What I'm less confident (probably because of my ignorance, i'm talking without numbers) is by how many eyes are looking into security issues/bugs. How much time takes a port to be fixed and available to users, compared to other vendors, for example.
Not saying that there is not an excellent work of those involved, but maybe, more mainstream OSs have the two sides: more people working on new attacks, and more people watching for security issues, or paid to work on patching/packaging etc.
I want to like the NetBSD project... but I see it as something for hobbies.
I can't see myself using it for serious production stuff.
Maybe it's not fair, maybe if I had spent as much time on it as I've spent on Linux, FreeBSD, OpenBSD... I could be a little bit more confident about it.
For example, I'm not confident about security work. I know, the less mainstream, the less botnets targeting it... but I'm not worried about botnets mainly.
Even for a minimal system, as the title say, I'm more confident building it in one of the operative systems that I'm more familiar with.
Still, I think that (Free|Net|Open)BSD, are something every systems engineer, should use and learn, at least for one year, at least once in life (if it's more, much better). It's like learning programming language B, even if everyday you use programming language A... It's like traveling... It is enriching and opens your mind.
Has you mention "new job", and everyone is talking you about computers... I will mention the other side:
1) Try to understand well the architecture of your company (who is who, who decides what changes are made to computers, how they decide that, what metrics do they use, what tests and benchmarks are passed before changes, etc)
2) Try to understand your place in such architecture. Am I responsible from the overall performance? or only the performance of certain components? am I responsible about the latency of the network or the latency of the database, or both etc. Make a clear scope. This will help you to focus on which metrics do you need to follow.
3) Try to understand the company procedures. Can I refuse a change that comes from the product or marketing team? can I refuse a change that comes from developers? can I refuse a change that comes from the platform team? how much time do I have to analyze such changes before they reach production, how can I request the rollback of a unsupervised change, where can I check the performance impact of each change made on production in the past? etc
4) Try to understand what the CEO and CTO, your team and the rest of teams should expect from you. Are there any SLA o SLO for your position related to the overall performance?
5) Make clear how you are informed of ongoing changes and roadmaps? Should I spend all the week in the performance of a component that is going to be deprecated in the next sprint? etc
6) Ask doubts and questions to your team mates, or department head. They may teach you about the company workflows, past issues, past solutions, corner cases, blockers, resources, plans and guidelines.
In short... look for reading/watching material, but don't forget to look at your company too, you will find things to learn there too, and maybe things that need to change if they are important enough; or need to be clarified that they are not important enough to change, to defend your work on future performance issues, related to those things that weren't changed.
My jaw dropped when I first saw this.
This is why cron tasks, always, should have some blocking (like flock) and/or timeout (like timeout from coreutils) and some kind of notification, better if it's something external to the server, like healthchecks.io
After read the article... all the reasoning... I think I could go with this for such reasons exposed:
perl -ne 'last if $. > 500; /mail/ && print' access.log
When you're done with the part after the &&, remove the 'last if $. > 500'For me, the most useful use of (gnu) cat, is cat -A weird.file
It saves my day or solves weird issues (X-files) with files generated by (not so) junior sysadmins, copy/pastes, end of lines, invisible diffs, etc... many times each year.
Maybe because statisticians (with their degree and correspondent IQ) never did reach really clever persons without a degree that I've known to perform an IQ test... or because they didn't choose some of the STEM degree holders, authors of real horror histories at work, or with the brain of a vegetable, that I did know.
Who knows :)
Anyway, don't want to discuss about if I'm wrong or insecure, but about the topic, have a nice day!
Not trying to impress at all... see the rest of the sentence and paragraph, its just background of the environment where I did meet people with a degree and low IQ
For the comments... it's clear I did choose a bad word here. Should I have say computers, all known programming languages, Microsoft, cisco, or whatever in 20 years... if linux was so easy for everyone 20 years ago.
Didn!t mean that I've high IQ just because I use Linux or something like that... neither i'm looking for congratulations.
My only point is that having a degree may not be only related to a high IQ and the other way around.
Sorry for the misunderstanding
In my time (20 years ago) computer related Degrees didn't teach Linux (again, here in Spain).
I, years after leaving formal education, without any degree, have been giving talks at universities to engineering students.
My reference to linux was not 100% related to the IQ... but I did want to talk about working in tech and degrees, which I think, depending on the company/industry, may be a signal for me (rather than be 8 hours screwing the same screw in a car chain). By that I don't mean there is not people with a high IQ in a chain (even there is lot of people with a degree in car chains).
Of course, maybe I'm totally wrong, thanks for pointing that.
Update: To complete... what may affect IQ? education changes? can a person educated one way or another, develop different IQ? physiological (ADN, etc) changes? can mutations over generations change the medium IQ? social changes? can the environment, habits and traditions during the formative stage of a person affect the IQ? I think so... maybe I should start by asking: what doesn't affect the IQ of a person?
Is IQ everything that counts?
Does the family's social class count or not? Does the socioeconomic situation of the state, country, neighborhood count or not? Does fashions, wars, crises, recessions, mass layoffs, drugs permitted by states, industrial changes, friends, political changes, city councils, police and judges, corruption, monetary funds, teachers, management of study centers, laws, banks and what not... count?
Living in Spain, more than 20 years working with Linux (self-learned from magazines, books, and modem-internet in the 90's), could not get a degree (by family situation, did start to work in fields unrelated to technology at 16's)... have found many persons with a degree and very low IQ in my career.
Still, interesting article. Here, even basic education is 100% worse than it was 20, 30, 40, 50, etc years ago.