11 ms·
Code rot and why I picked OpenBSD
- na85 12y agoOpenBSD is really great, and it qualitatively feels really solid and cohesive. Especially compared to Linux which by comparison feels like a bit of a clusterfuck at times. But I just can't switch to OpenBSD as a daily driver yet. The big ones for me are battery life and responsiveness. Unfortunately compared to Debian I get almost 2 fewer hours on a single charge, and using OpenBSD's power management functions makes my i7 thinkpad sluggish and laggy. Noticeably longer delays when starting applications and whatnot. I'm sure OpenBSD is a great desktop/server OS but IMHO it's just not there yet for laptops, which is surprising/disappointing to me because I'd always heard the OpenBSD guys dogfood their stuff heavily.
- morganvachon 12y agoI can't yet get it to boot and run properly on my Haswell based workstation, but it works a treat on my 15 year old laptop apart from aggressive cooling cycles (Windows and Slackware would rarely spin the fan up above idle speed, OpenBSD runs it full blast 50 percent of the time). It amazes me just how responsive and useful that ancient laptop is with an OS released less than three months ago. And yes, it just feels solid, much the same way Slackware does but even more so. It's not the perfect "Desktop OS", dogfooding or not, but it's good enough if you're focused on using it to get work done and leaving the entertainment stuff for Linux/Windows/OS X. And you should submit your dmesg and any info you have about your battery and PM issues to the OpenBSD devs. They really do listen and try to fix issues like that!
- na85 12y agoYeah I'd submit it but I don't really want to have to deal with Theo and his planet-sized ego.
- morganvachon 12y agoI've yet to interact with him specifically, but it's been my experience that OpenBSD devs are helpful folks, if not as friendly as the Slackware crew. But I'm not submitting bug reports to make friends.
- Gracana 12y agoYou should watch some talks and interviews with Theo. He is very nice and cares about his development team and his users; he's really not the cranky jerk that he's often depicted as.
- DominikD 12y agoOh, he is from time to time, but it's mostly towards people from the outside who pop in at random and tell OpenBSD folks How Things Should Be Done. I get it that some people tend to think they know what's right for any and every project and I'm sure their heart is in the right place. But at the same time I can see why this comes across as impolite to order people around like that. Dev's responses are typically proportional to BS dumped at them. But taken out of context it's easy to paint them as hostile and ego-driven.
- yellowapple 12y ago"it's mostly towards people from the outside who pop in at random and tell OpenBSD folks How Things Should Be Done" See also: Richard Stallman's attempt to troll the OpenBSD mailing list[0] after having been called out[1] about a misunderstanding of the OpenBSD ports tree (and its existence as an index of software that can be built or installed on OpenBSD, free or otherwise). [0]: http://marc.info/?l=openbsd-misc&m=119730630513821&w=2 http://marc.info/?l=openbsd-misc&m=119730630513821&w=2 [1]: http://marc.info/?l=openbsd-misc&m=119725673616073&w=2 http://marc.info/?l=openbsd-misc&m=119725673616073&w=2
- feld 12y agoTheo is South African. He comes from a culture where you are very blunt.
- gaius 12y agoThe solution I have used for this for well over a decade is Windows on the hardware, then a VM, then my OS of choice running full screen ontop. The overhead of even semi-modern virtualisation is pretty low, and you benefit from power management that has thoroughly matured.
- transpute 12y agoHave you tried Hyper-V as a client hypervisor?
- gaius 12y agoI haven't, most of my experience is VMware (on server farms) and VirtualBox on desktop.
- morganvachon 12y agoI always test drive a new-to-me OS in VirtualBox and VMWare first, just to make sure I can get my head around how it works, but even running it fullscreen on a fast system, it's not quite the same as bare metal. Random slowdowns, unaccelerated window managers, printing not working properly, and issues with some guest OSes sharing folders with the host can be annoying. Another thing to consider is that bug reports are only valid for the virtual environment; sometimes things that happen there simply don't happen on bare metal. I always test Haiku OS on any new hardware I get so if I come across something wonky, I can submit it to the devs for more testing. In a VM, that's pointless (but then Haiku is a hobby, not a job, so maybe not relevant to this discussion). All that said, if all you need is a terminal and a web browser to be productive, a VM is a solid choice for getting things done efficiently.
- xtrumanx 12y agoI tried that out and noticed minification and bundling of my js code taking several seconds rather than a couple of milliseconds. Am I doing it wrong or is that to be expected? I was using Ubuntu in virtual box on win8.
- fencepost 12y ago
- mhd 12y agoYes, sadly the last time I've tested, OpenBSD was actually the best of the BSD's when it came to power management... And I'm not even a big laptop user, but I've gotten so used to suspending systems instead of shutting them down…
- vegedor 12y agoA typical arrogant answer to that is, sucks for you if you can't buy better hw, bsd-functionality comes with a price-tag for speed. I'm not even sure the difference is warranted by design, while I totally see how it would still be an issue e.g. in servers where it goes in the money.
- fubarred 12y agoCode rot: LOL and amen. I had to (help) make a nuclear reactor simulator work on Win32. 30+ megalines of Fortran developed by mostly nuclear engrs over three decades. Thankfully it worked in reasonable time by disabling swapping.
- MBCook 12y agoThe article advises paying attention to the mailing lists. Is there a LWN style product covering OpenBSD (possibly with free/net as well?)
- sharms 12y agoThe closest that I know of is http://www.undeadly.org http://www.undeadly.org which does a good job of covering news, sprints etc
- clarry 12y agoNot exactly LWN, but you can find a good sum-up of interesting news/changes/discussions concerning all the BSDs here: http://www.dragonflydigest.com/ http://www.dragonflydigest.com/ I also watch tedu's blog (http://www.tedunangst.com/flak/ http://www.tedunangst.com/flak/) and the OpenBSD tag on lobsters.
- protomyth 12y agoFor http://www.dragonflydigest.com http://www.dragonflydigest.com I find the "Lazy Reading" articles to be some really great pointers to all types of cool articles. The "In Other BSDs" is a great survey of the BSD news highlights. For general news, undeadly is in my rss feeds. I also like the BSD Now and bsdtalk podcasts. BSD Now is from two folks from PC-BSD and FreeBSD, but covers the other BSDs as well.
- stefeneh 12y agoBSD Now is from three people, the third of which seems to be more of an OpenBSD person. That balances the news out a little more I suspect.
- protomyth 12y agoThey do a pretty good job, although the interview with the FreeBSD security person who didn't want to get contaminated by the OpenBSD code was painful. I really wish they had challenged that statement.
- Scarbutt 12y agoIs the performance of the JVM/PostgreSQL/NGINX on OpenBSD the same as on Linux? Are there any reliable OpenBSD VPS providers?
- areed 12y agoI had a good experience with RootBSD in 2014.
- deleted 12y ago[deleted]
- snksnk 12y agoI would recommend http://www.ramnode.com/ http://www.ramnode.com/ Reliable and cheap, even more so if you take 10 minutes to google for a discount coupon.
- schwarze_pest 12y agoNo, (in many cases) it's not the same, OpenBSD uses a giant lock.
- toyg 12y agoI'm using Vultr.com but I installed as "Custom ISO" since they didn't have a 5.6 option at the time.
- devicenull 12y agoThe main reason why it's not an official image is OpenBSD doesn't seem to support any sort of online disk resizing. Operating systems get deployed from an image, and typically expand the own partitions to fill up the disk... OpenBSD can't do this, which makes things pretty tricky.
- yellowapple 12y agoI haven't benchmarked anything, but at least for PostgreSQL and nginx, I've found OpenBSD's performance to be right on par with what I've come to expect from GNU/Linux servers; nothing feels particularly slow. As for VPS providers, I've heard good things about 1984[0], though I haven't used them myself (yet; I'll probably do this pretty soon). I've also used EDIS[1] without any particular problems. Both provide OpenBSD as OS options. [0]: https://www.1984.is/ https://www.1984.is/ (in Icelandic, but there's a drop-down to set the language to English). [1]: http://www.edis.at/en/home/ http://www.edis.at/en/home/
- pakled_engineer 12y agoavoid nvidia if switching to OpenBSD, you miss out on dropping all X privs http://undeadly.org/cgi?action=article&sid=20140223112426&mode=expanded http://undeadly.org/cgi?action=article&sid=20140223112426&mo...
- yellowapple 12y agoNot to mention that Nvidia cards don't play nicely with non-Linux (or OSX) Unixen in general.
- Quequau 12y agoI've used OpenBSD for years in my router. Something that has given me a bit of pause recently, is that with all the various espionage revelations coming out in the past 14-16 months, I had expected the OpenBSD crowd to be out in force talking up the operating system but they've been surprisingly subdued. Just makes me wonder...
- gaius 12y agoThose who know don't talk and those who talk don't know.
- pferde 12y agoNow, if we could only get the latter to shut up and listen, and the former to start talking. Wouldn't that be wonderful?
- glass- 12y ago> I had expected the OpenBSD crowd to be out in force talking up the operating system but they've been surprisingly subdued The OpenBSD motto is "shut up and hack". Look at the work that is being done recently with libressl, openssh, the new httpd, signify, static PIE, xorg privilege separation etc. etc. They're letting the code do the talking.
- Quequau 12y agoI don't think that the OpenBSD crowd's response to the OpenSSH vulnerabilities are an example of some motto of "shut up and hack" at all. In fact, I find their response to demonstrate the difference in reactions that got my attention. Heartbleed provoked substantial discussion as well as the LibreSSL project.
- tedunangst 12y agoWhat OpenSSH vulnerabilities?
- wtetzner 12y ago
- blackhaz 12y agoMy second development laptop runs FreeBSD - switched away from Debian in 2012. I wanted to try OpenBSD, however the amount of labor required to simply upgrade the system (Google "openbsd upgrading") outweighed all benefits for me at the current point. Also, FreeBSD has pkg, which is a neat binary package manager - which is important on a desktop/laptop - and it looks like OpenBSD still uses the old, manual pkg_add way. Maybe I'll try it on the third laptop, curiosity grows bigger every day for sure.
- clarry 12y ago> I wanted to try OpenBSD, however the amount of labor required to simply upgrade the system (Google "openbsd upgrading") outweighed all benefits for me at the current point. Are you sure you understood the documentation? Most upgrades are done in ten minutes, and it's mostly an automated process (the package updates are limited by your bandwidth of course). Every once in a while something on the system is changed or removed, and the upgrade guide tells you how to deal with that -- unlike on many other systems, where you upgrade and then find out things have changed and broken and you have no idea what needs to be fixed.
- blackhaz 12y agoHmm.. Let's take this FAQ, for example: http://www.openbsd.org/faq/upgrade56.html http://www.openbsd.org/faq/upgrade56.html To me this looks more "manual" than FreeBSD's freebsd-update. Additionally, if there's no tool like pkg then upgrading all the user land packages will be quite an undertaking. A typical desktop/development environment may have about a thousand of them installed. On FreeBSD, I can do pkg upgrade, and it will take care of all dependencies pretty much automatically. Is there something similar available on OpenBSD?
- calrogman 12y agoYou can upgrade every package on the system simply by running `pkg_add -u`. This has been the case since they were rewritten by Marc Espie for the 3.5 release in 2004.
- 12y ago
- Macha 12y ago> I gave my 3 month leave notice to my employer at the end of March 2014. 3 months? That sounds excessive. How much would your employer have been required to give you if they decided to let you go?
- mulander 12y agoTime or money? If they were the ones ending the contract then I also would have to stay for 3 months (getting paid for it). I would get no money if we would both agree to let me go on the first day. They didn't want me to leave and I was not in a hurry to go on the first day. So I stayed for the whole period and tried to do my best both for my co-workers and my employer.
- CrLf 12y agoI would guess they aren't required to give any notice. However, they are probably required to pay him at least 3 months of salary after they do. If they choose to pay without having the employee do something for them during those 3 months, it's their call.
- sneak 12y agoThe company probably doesn't care about his reference.
- atsaloli 12y agoI left a job after 8 years. It took 3 months to do a thorough knowledge transfer (documentation and training). It's a business-critical system so as a professional, I wanted to ensure my replacement's (and my former team's) success. I left on very good terms.
- pjmlp 12y agoQuite common in many European countries.
- howeyc 12y agoI'm curious about the mention of shopping with a bootable usb stick. Has anyone else tried this? Where can you do such a thing? I'd be afraid of salesmen thinking I was "hacking" or something.
- dedward 12y agoExplain what you are doing and why; if they don't want to let you try it, then you aren't interested in buying it. It's understandable that, out of ignorance, they aren't comfortable letting you do that... it's equally understandable that you wouldn't pay thousands of dollars for something you can't even play with for a few minutes in the store first.
- serve_yay 12y agoEverybody is piling garbage on top of garbage, then taking the money and running. Don't be the schmuck who chooses to die on some godforsaken hill to make a point about software quality. When it starts to smell, move on. Is this world suboptimal? Yes, it is.
- marktangotango 12y agoI worked at a place like that once. The application was the definition of lava layers. It was my second gig so I hustled, got uo to speed fast, and really impressed my boss. Found the exact same situation, crap on crap, features that never worked, features that were sold but never implemented, hand rolled transaction framework, a real pile of sh*t. At a year went out and lined up another job then gave notice. Long story short, and against my better judgement i stayed, for a 50% raise and a promotion.
- hyc_symas 12y agoNot everybody. http://symas.com/mdb/ http://symas.com/mdb/ If you don't take a stand, what's the point of your life?
- bootload 12y ago"... At my previous job I worked with a 2 mln LoC code base for a core banking system. ... Imagine working with a code-base, that's layer upon layer of quick fixes. Imagine being woken up at 3 am to diagnose & resolve an issue with it. ... The company wasn't really affected by heartbleed. ..." AND "... OpenSSL code base, counting how much resources are needed to plumb it into shape, how the original maintainers - let's not go there. Let's say 'didn't do a great job'. ..." Does anyone see the disconnect here?
- mulander 12y agoI'm the author of the article. Can you elaborate more clearly on what you are pointing out?
- bootload 12y agoHi @mulander, this is a good read (quickly went thru your other posts as well). The point I wanted to make was the bank code base described in the article reads like it's insecure (no mention of it being exploited). The article then describes using Unix variants at home, [0] though not which one. I assume Linux. Usable, permissive and open, Linux has always been inherently insecure. Then the article goes on to describe finding of OpenBSD, post Heartbleed. The question I asked myself: "How does a smart capable person as yourself, miss security being the heart of the operating system and programming while working on core bank systems?" Is this atypical? That's the crux I've what struck me. The dis-joint between the description of what represents a secure, large code base and the personal move to OpenBSD. From what I understand OpenBSD, a bastard child of 386BSD [1] was a deliberate move to build a secure and audited and most importantly free operating system. This is such a contrast to the cruft described in the article. Maybe that's the point of the article, a growing awareness that fast a moving code-base left unchecked, comes at a cost. It has to change and it can be done. [0] I fully endorse this btw. A linux user since '95, I love how I could use lots of different hardware with it. Linux is also fast. Fast to use, fast to install software. Fast. Secure it is not. I got sick of trying to secure my boxes and started using OpenBSD. Read about my pathetic attempts to install it on old hardware <http://monkey.org/openbsd/archive/misc/0310/msg01026.html> http://monkey.org/openbsd/archive/misc/0310/msg01026.html> [1] P57, Tovalds & Diamond, 'Just for Fun', "One BSD derivation in particular is worth mentioning. I was the 386BSD project by Bill Jolitz based on the BSD code-base, distributed over the Internet. It was later to fragment and become the freely available BSD favors-NetBSD, FreeBSD, and OpenBSD".
- ams6110 12y agoI love OpenBSD and I use it as my desktop OS at work and at home. But there are a couple of inaccuracies in this piece. In OpenBSD you are encouraged to run current. What they actually say[1] is: The name -stable refers ONLY to the API and operations of OpenBSD not changing, not the overall reliability of the system. In fact, if things go as desired, the -current flavor of OpenBSD, on its way to becoming the next -release, will be an improvement in reliability, security and overall quality over the previous -release and -stable. What is implied is that sometimes things don't go as desired; -current sometimes has issues. They are almost always quickly fixed, but if you depend on as near as possible certainty that an update won't break anything, you should run -stable. If OpenBSD states that something is configured then it works and will remain working flawlessly or will only get better over time. Not guaranteed. I remember somewhere in the 4.x series my NIC driver was removed from the release build. I updated, and suddenly had no network access. My fault for not reading the release notes, but they don't always support old/obscure hardware forever. More recently, support for some older Microsoft VPN protocols was removed. It was because they were insecure, but this changed the way I had to interoperate with one of my client's internal networks. [1]: http://www.openbsd.org/stable.html http://www.openbsd.org/stable.html
- emidln 12y agoLesson 1 sources on the hdd This might sound simple but in a long time I didn't feel so connected to my OS. Having the sources for every piece of software I use around made things really different. How? I'm actually looking at them I've taken to keeping a ~/code on my machines after experiencing the same thing with a BSD. It has been life-altering to be able to search implementation details with a simple :grep in my editor. I typically keep a copy of OpenBSD sources, along with major libraries for my current target OS and my dev toolchain (clojure/python(pypy)/clang) around to reference due to this. OpenBSD sources are kept around because it's cleaner to reference when I'm simply studying how something might be accomplished (as opposed to loading up glibc or the linux kernel if I need an implementation detail).
- yellowapple 12y agoI've been using OpenBSD for about a year now. It's still not quite my daily driver (it's running on one of my three main workstations - a PowerBook G4 - but not on my desktop or my other laptop, both of which are still running GNU/Linux - Slackware and openSUSE, specifically and respectively), but it's certainly the OS of choice for my servers. OpenBSD appealed to me as a Linux user for the same reasons why Linux appealed to me as a Windows user. I was tired of bugginess, and just wanted things to work. Unfortunately, I still have the same obstacles migrating to it from Linux as I had migrating to Linux from Windows - namely, hardware support and gaming - that keep it from being my dream OS; however, it's still the OS I like to use when I need to get real work done (just as GNU/Linux was the OS I liked to use when I needed to get work done, back when I was still a Linux/Windows dual-booter so many years ago). Even with those shortcomings, my PowerBook G4 is currently my favorite machine. There are some kinks, to be sure (power management is non-op, so I can't put the laptop to sleep), but with OpenBSD and WindowMaker, it's pretty rock-solid despite its age. The nice thing about OpenBSD is that the devs aren't afraid of breaking backwards-compatibility if needed. They've already solved the 2038 problem as of 5.5, for example; with Linux's policies on backwards-compatibility, that'll be a nightmare to fix on 32-bit Linux systems (and even other BSDs, if I understand correctly). To me, that's awesome; I'll take a minor flag day to clean-reinstall my servers now over a major flag day to hack together some kind of band-aid "fix" later any day, and it's nice to know that, should I setup a server right now, it won't spontaneously vomit all over itself in 20 years or so due to it suddenly thinking it's 1970 again.
- bob917 12y agoHere in Memphis, I come from a long proud lineage of homophobes. OpenBSD feels like the most heterosexual UNIX-like OS there is. Thank you theo, kyjell, and the entire team. You're super.