Would the devs consider compiling a list of specific improvements they’d
like to see volunteer’d upon this summer? I’d love to help especially if it
was a group effort/friendly competition.
I hope they go do something along those lines. I applied for GSoc in 2014 but was rejected because I had another job, wish they would have told me that before I applied :|
Don’t wait for others to do the work for you.
You can research the OS and its source tree at any time and try to find areas which have specific problems you would like to work on. Then present your project ideas to developers active in those areas and ask for guidance.
That’s what I did for my master’s project (ended up working on ospf6d and became a developer).
That is the noble thing to do, for sure but… it’s pretty daunting (for me anyways) to just browse through the tree and decide to start hacking on something. I’d still like to know where extra coders or eyes are needed in the eyes of the architects.
Standard advise is to install openbsd and use it and see what doesn’t work. Or find something that works and see what it does.
Direction is really secondary to interest, and nobody can tell you what to be interested in. It’s not that we don’t like contributors, but there are many, many years of history and trying to lead people to certain areas that fizzled out. Whereas many current developers came from nowhere and just started mailing diffs.
My only gripe is I do use OpenBSD (for a wide variety of purposes and systems) and I haven’t found anything that doesn’t work for me… yet. (Actually once I hacked cu to save the reset password for my Dell MD3200i as the Dell tech wouldn’t give it to us and would only enter it over a remote desktop session)
Anywhere? Really? The ports system is unimpeachable? You don’t have any friends with hardware that doesn’t work on it? You like the all of the system defaults? The installer is beyond improvement? You can’t write a faster grep without GNU code? Nothing has ever crashed? Every suspend to disk and RAM works perfectly on every machine you’ve ever tried? All Linux software you’ve ever had to use under emulation mode works great?
Surely there’s something that doesn’t work quite right for you. Otherwise, why would you want to work on OpenBSD at all?
I don’t use ports on most of my systems so I can’t speak for it’s peachability (impeccability?). Defaults are sane :) Installer is a thing of beauty and a joy forever. Emulation mode is gone my friend!
Or follow bugs@ and see if there is anything you can fix that crops up on that list.
One thing i would love to fix and contribute is how to stop my motherboard crashing at boot whenever there is an openbsd installation on my ssd. Its a total mystery to me, openbsd bricks my main desktop.
However working out exactly the cause, let alone a fix is really tough.
Most likely a shitty BIOS/EFI that tries too hard to read the disk without proper error checking. There may be an update. (Also, depending on when you installed, wiping and reinstalling my help. There were some changes to zero more of the disk in an effort to leave fewer remnants behind.) Or maybe even use GPT partitioning and stick a tiny NTFS or MSDOS partition on it for the BIOS to ogle.
I will give that a try, i recently tried with 6.0, i might try current or try the GPT trick.
This seems to be surprisingly common - I have a PC that also crashes when exposed to OpenBSD disks.
I assume this is something other than a kernel panic? UEFI or legacy boot?
This is pre-UEFI, though I’ve heard of it happening on UEFI based systems. (though unsure if they were using the CSM) Because it happens in firmware, it’s long before a kernel panic can happen.
Oh, that’s rather strange. Do you get an error or does the machine just freeze?
It’s just a hardlock at boot. It seems to affect a bunch of different models made at various times - I’m wondering if its a firmware bug that’s shared by a vendor, but I’d have to gather reports from users about which vendor the OEM sources the FW from.
I think you should use the OS. I find it kind of useless to get people to hack on something they’ve never even used before. In Octave, I never had any interest in getting “career” GSoCers who jump from project to project writing code for the sake of GSoC but not for the sake of Octave.
If you use OpenBSD, you must already know of some bug to fix or feature you would like to implement. Once you have a goal, you at least know what to ask about and where to get guidance. If you don’t even use OpenBSD, I don’t think there’s enough time to get interested on it during GSoC.
This is confusing to me. The work isn’t for me, as a potential contributor, it’s for the project.
Then present your project ideas to developers active in those areas and ask for guidance.
Moreover, it’s an investment for the active developers. How much time would it take to put together a list of a few dozen things to work on, versus the time to review many new project ideas and give guidance to each one? Doing the work up front is not only more efficient from a time perspective, it also allows the ongoing work to be distributed among existing seasoned devs, by having a central notion of the plan.
Don’t get me wrong, it’s admirable to do the work that you did to make a change. It’s just confusing to me that you would recommend it as the right way.
This is indeed the part that confuses people. :) But the best contributions come from people satisfying their own needs/interests/curiosity and not blindly trying to fulfill someone else’s dream.
I would mention though, that certainly there must be OpenBSD users out there who might want feature X but don’t have the programming skills to implement it. I’d like to help them do so (provided I find X interesting) but I won’t know what they want until they ask.
Stick around the mailing lists. Or the tubes: HN, Lobsters, good ol' fashioned reddit… There’s no shortage of people asking for features. :)
This is the thing I find surprising. There’s the set of people saying “I want to help, what do I do?” and there’s the set of people saying “I’d like to use OpenBSD, but it’s missing feature X.” I see these threads all the time, in the same places, but these two groups somehow never see each other?
I was kinda hoping Theo would just call and let me know… but those will work too!
To clarify: I meant doing the “work” and spending the time involved in researching and deciding which projects people could do. I could have chosen better wording.
And indeed, making such a list does take time and we will never know who will look at it and what their skillsets and interests are. And things change all the time so the list would need to be maintained and kept up to date. And existing developers already spend a lot of time working on the project as it is.
And generally, somebody who is self-sufficient is a better fit for this project than someone who is not.
How much time would it take to put together a list of a few dozen things to work on
Fine. Here is your list. Want to know how many of those were picked up before the page has been removed?
Things change. Something we wanted in 2014 might not be something we need now. Should a person now be responsible for maintaining an up to date list and being sure to remove people that no longer want to mentor a topic?
On the other hand there were a bunch of people that just showed up, asked about a specific area they were head banging on and got help from interested developers. I prefer to see more people like this guy on reddit who wants to know where to start vs dragging people away to maintain a list that literally no one picks up tasks from.
And what’s a project worth if it doesn’t solve its users needs? If you’re not writing code that you’re going to use, then you’re not likely to understand the tradeoffs that should be made.