RFC Coding Guidelines: Formatting Class Member Declarations

Blog post by nielx on Mon, 2024-02-05 16:13

This RFC proposes to change the Haiku coding guidelines to change the formatting of variable and member declarations from a Table Class Member Declaration Style, to a Normalized Declaration Style or a Aligned Declaration Style. The arguments are that (1) the current format has severe limitations which limits the aesthetic value of the current formatting, especially when modern C++ language features are used, and (2) it is not a good use of the time of Haiku’s contributors to modify and maintain custom logic in the haiku-format tool (derived from clang-format). If the proposal is adopted, any new code contributions will have to use the new formatting style, and contributors are required to reformat any declarations that they modify.

Haiku Developer Tools Update (October 2023)

Blog post by nielx on Sat, 2023-10-28 10:35

This article lists some of the recent updates for developer tools that are available in the HaikuPorts repository. Many of these can be installed from HaikuDepot.

This is the first article on this topic, but it may become a regular (quarterly?) series. Let me know in the comments what you find of these notes, and what else you think should be covered.

HTTP Network Services Preview in R1 Beta 4

Blog post by nielx on Fri, 2022-12-30 00:00

The newest beta of Haiku includes a preview of a redesigned, modern HTTP library as the initial part of an renewed Network Services Kit. The primary goal of including the library is to get developers to experiment with it and give feedback on how it works within their software. The secondary goal is to gather some feedback on the use of modern C++ and some additional experimental features. This article provides a background to the new kit, some pointers on how to get started, and some notes on experimental designs that utilize modern C++ features.

Rust on Haiku: the Case of the Disappearing Deceased Threads

Blog post by nielx on Sun, 2020-09-06 07:21

Summer! The time to slow down, relax, go to strange places, and do the projects that are long overdue. This summer I had the joy of spending my time in a lovely house near Lyon in France. In many ways the summer was like others, meaning there was plenty of wine and a lot of relaxing activities. At the same time, the Covid situation did give me a lot of reasons to scale back exploratory activities at the tourist hot spots, and instead focus on activities close to home. I decided to seize the opportunity and to see if I could dive into one of my long-standing pet peeves in the Haiku ecosystem.

For a long time I have been maintaining the build of the Rust compiler and development tools on Haiku. For this purpose, I maintain a separate tree with the Rust source, with some patches and specific build instructions. My ultimate end goal is to have Rust build on Haiku from the original source, without any specific patches or workarounds. Instead we are in the situation where we cannot build rust on Haiku itself (instead we need to cross-compile it), and we need a customization to be able to run the Rust compiler (rustc) and package manager (cargo) on Haiku. This summer my goal would be to find out the underlying issue, and fix it so that the patch will no longer be necessary in the future. Let’s go!

The State of Rust on Haiku - July 2018

Blog post by nielx on Thu, 2018-07-05 07:31

The Rust programming language belongs to the category of modern programming languages that aim to provide a reliable and safe alternative to C and C++. In the past few years, few people have been working on getting the compiler, and the other build tools to our platform. And in fact, since Rust 1.0 there have been reasonably working binary packages for building Rust projects on Haiku. With the recent addition of Rust 1.

Haiku has No Future

Blog post by nielx on Sun, 2010-04-11 15:19

It was a few months ago that on a lazy Sunday afternoon I found myself to be in Brussels at the FOSDEM conference, where François organized a very successful Alt-OS development room, filled with all sorts of presentations on the world of the alternative operating systems. As probably the only non-computer science person, I got a slot as well and I decided to give a presentation with this same title. Now just imagine, I was scheduled on the last day, nearing the end of the conference (around four or five in the afternoon) and knowing the visitor group, I did not expect much. As such, I decided to prepare a discussion session for the ten or so people to show up. Now about five minutes before I was scheduled to go, people started trickling in. And to my pleasant dismay – if ever such a thing is possible – I ended up having a full house. Now why would a large number of computer geeks or – more nicely put – Open Source fanatics be interested in what a silly humanities guy has to say? I started to think about that, and I realize that this is in fact a very central question to everybody that donates time or money to these projects: what will be its future? Or put in another way, how can we, as actors in the always changing, always new information technology sector determine a path? That is the problem I would like to give a stab at in the coming twenty minutes.

This contains the text and the slides of a presentation I gave on the 11th of April 2010, at BeGeistert 022 in Düsseldorf. You can get the slides and a printer-friendly version of this text.

Alpha 1: A Week Later

Blog post by nielx on Mon, 2009-09-21 13:00

Exactly one week ago, on a simple Monday in September, we pulled the lever. Though it had been anticipated in more than one language, it was a relief when suddenly a whole new website appeared, and more importantly, this update had something called a release, a thing relatively unknown in Haiku's universe. I still remember being in the IRC channel, when Michael Lotz proclaimed: "I can't believe the other devs are letting me do this" while he was tagging the source code for the final alpha build.

So what happened after that?

A Jocund Eulogy

Blog post by nielx on Sat, 2009-04-04 21:12

According to my resume, I’ve been contributing to Haiku since 2002. I don’t remember how I determined that start date, and GMail is only five years old so searching that does not provide me with an answer either. What I do know is that I feel a strong connection with this project. Which really makes it all that harder to part.

I remember I started by writing a naive proposal about internationalization back when this was still OpenBeOS. You should know that at the time I was sixteen years old, so I never really knew BeOS, and I just came from the translation team from KDE. I left that project in search of something bigger, more integrated, more … I think we have all been there. BeOS seemed like a materialization of that dream. Only, Be Inc. already turned into ashes when I started my quest. A bunch of silly coders with a vision were determined to continue that dream. Little did they know that seven years later their code would boot on many machines - even though mine right now seems to be left out of the fun. My proposal on internationalization, however, never came to materialize.

Git for Haiku (#1)

Blog post by nielx on Mon, 2008-04-21 14:25

I would like to announce the availability of the git revision control system. The git website describes it as:

Git is an open source version control system designed to handle very large projects with speed and efficiency, but just as well suited for small personal repositories; it is especially popular in the open source community, serving as a development platform for projects like the Linux Kernel, WINE or X.org.

Git falls in the category of distributed source code management tools, similar to e.g. Mercurial or Bazaar. Every Git working directory is a full-fledged repository with complete history and full revision tracking capabilities, not dependent on network access or a central server. Still, Git stays extremely fast and space efficient.

This document describes how to install the git binary, and how to get the source.

Haiku Alpha 1 Status Update (#2)

Blog post by nielx on Mon, 2008-03-31 07:47

This is the second installment of the Haiku alpha 1 status updates. In this issue I will discuss the progress on including the developer tools in Haiku. Some interesting progress has been made. I will also expose a discussion on the mailing list on whether or not to release a bootable CD. At the end of the page you will find the enhanced milestone statistics.