New website section16 July 2017
A new section has recently been added to this website — the Elec section, which is a section related to electronics. This section is primarily concerned with physical circuits (i.e. stuff involving soldering) but also includes within its remit embedded programming, as these are devices that are not much use outside of custom-built hardware circuit boards. It also includes software-only articles that are of relevance from an enabling technologies perspective: In other words getting stuff built. I suspect a lot of the stuff that will end up in this section is related to Microchip PIC microcontroller programming, and this is pretty much intentional.
I bought in this section because although I have a background in theoretical computer architecture, board & solder (nuts-n-bolts to everyone else) electronics is something I have no real recent experience of. The odd repair job or building of a custom data cable, but that is pretty much most of the stuff I had done over the years. I know the best way of writing notes is to write them as if someone else is going to read them, and putting them somewhere public assures they don't get lost.
Site historyA while back I killed off the Sites & Links sections, and for that refresh decided to leave the gaps until something new came along, rather than thinking of yet another placeholder. I had thought about a section called Project Oldé which would have been me digging though my pre-2002 hardware that I kept around for playing 1990's computer games, but that stuff is all back in the UK so had no real chance to put much of that project into practice. I did do enough to create 1 or 2 related articles, mainly as a result of trying to run Unreal within virtual machines, but otherwise I doubt this will go anywhere soon.
Why not Pi?After some thought I decided that Raspberry Pi does not count as embedded programming, as Raspberry Pi is other than size is little different from a desktop PC. Back when I was working in the UK I built embedded servers, and they were only called “embedded” because they were not meant to be accessed like a desktop PC in normal operation. In practice this meant the systems were without the usual display & keyboard and instead included a custom-built electronic user interface on the front. In reality they were still standard x86-based systems, and the only difference between then and Raspberry Pi is size & CPU architecture.
For me embedded means it is not running an operating system such as Linux or WindowsCE. Embedded programming to me means writing the entire firmware that is flashed to a chip, as in this case there is no deferring of issues such as concurrent processes to a separate software layer. Actual embedded programming often means taking account of chip-specific issues, and as far as I can tell embedded Linux & Windows are still mini-PCs that requires no special issues compared to standard x86 desktop PC programming.
Article arrangmentI decided to re-use the code that currently drives the Tech and Misc sections because in practice the date-arranged repository model of article organisation works well, and it only requires a few extra lines to adapt the code for a third such section. A notionally more organised structure would likley break down sooner or later, and in any case most people would find an article via Google rather than looking through whatever fancy index structure I come up with. A lot of the time I am looking for stuff on this site, I put
No new URL scheme?In the past I had made plans to switch to “friendly” URLs — in other words replacing the current
yyyywill probably be a short base-32 code — but have decided to use the existing scheme for the new section rather than mix the two. The new scheme was not quite ready, and I felt that rolling it out all in one go for all sections would probably help simplify the redirection code that would catch old-style URLs.