Rust: move fast and break people’s wallets

Rewrite-it-in-Rust has become a moral imperative. Well, here’s a moral argument: throwing away serviceable computers every couple of years to upgrade is a privilege that not all of your users have, contributes to climate change, and fills up landfills. As far as security is concerned, some matters demand leaving the norm: old hardware is the only kind that can avoid proprietary firmware blobs, Intel ME or AMD PSP, and UEFI. Novel hardware which addresses issues like microcode and open hardware, like POWER9 and RISC-V, are also suffering under Rust’s mainstream-or-bust regime. Anyone left behind is forced to use the legacy C codebase you’ve abandoned, which is much worse for their security than the hypothetical bugs you’re trying to save them from.

Source: Drew DeVault’s blog

As someone who almost exclusively uses older hardware I am extremely annoyed by developers and system administrators who tell me I need to switch out my hardware every 3 to 5 years for the sake of convenience. It’s a very entitled position to take and it got me annoyed enough to go on a little twitter rant about it. If your old hardware works it should be used for as long as possible. You don’t need a server with an AMD Epyc CPU with 1 TB RAM and multipe SSDs with ZFS to… run a simple WordPress blog like this one.

I certainly don’t have the money to develop software in Rust-recommended hardware, which can also double as gaming hardware with the addition of a nice GPU.

How about a memory safe language that can run on “old” or “slow” hardware of the sort that is most often used outside of the US and Europe? If you were to listen to these people they’ll tell you it can’t be done.

Rust: move fast and break people’s wallets Read More »

Thinking Tools: July 2020

It’s been a long while since that last post I did and my setup has changed a lot:

Web services

  • This site, which I’m trying to update more often with links and blog posts I find interesting. It’s going much better after I installed the WP plugin to enhance the plain editor. The gutenberg editor sucks ass.
  • Nextcloud. I’m running my own instance to replace Dropbox, which I didn’t like the last time. Got the desktop client installed and it’s working quite nicely.
  • Twitter is still my social media network of choice. I’m using tweetdeck on the desktop
  • Feedly is still my RSS reader of choice but I’m looking around for a replacement that works across all my devices and it’s pretty to look at. Now that people are starting to move away from centralized social networks again there should be some movement in this space.
  • I’m running my own wiki using Wiki.js, which I’ve blogged about. This will probably merit another couple blog posts of their own specially now that I found vimwiki which could potentially run inside my Nextcloud instance.

Actual applications installed on my desktops and laptops

  • For messaging I’m now using Ferdi, a fork of Franz, to run most of my instant messaging needs. The great exceptions are Slack, Discord, and Signal; I discovered I work better when they have their own app instances running but when Signal offers a web interface I’ll probably fold it into Franz.
  • Spotify. Thinking of replacing it with a self-hosted option. I miss my graded playlists.
  • KeePass is still my password manager of choice.
  • Firefox. Mozilla keeps trying its best to kill all low-level functionality. This is easily the program I fuck around with the most, going from extensions to custom userChrome files.
  • Windows Subsystem for Linux. Much less of a pain in the ass than running a VirtualBox VM depending on what you’re doing. Using wsltty as its terminal.

There are some single-purpose utilities I’ve discovered in the interim that are extremely useful for working in Windows 10.

Mobile applications (Android)

  • The usual instant messaging slash social networking suspects minus TikTok, which is spyware.
  • Firefox mobile. Firefox needs to do better at syncing preferences into it.
  • Fenix twitter client. Twitter Co keeps fucking around with their API and preventing third party clients from achieving the excellence they used to have years ago.
  • Nextcloud mobile client for my Nextcloud instance. Needs a lot of work to compare with Dropbox, but it does its job well.
  • Moon+ Reader for ebooks. This one took me a long while to find, most ebook readers have utterly crazy skeuomorphic defaults.
  • Photoshop Express. This one was annoying but you’d be surprised how many image editors are missing features you’d consider basic (like cropping and image resizing), opting instead to overload with photo filters you’ll never use. This one has all the filters but at least lets you crop and resize. It replaced Snapseed. I’ve still to wade through open source editors but my hopes are dim on that front.

There are some things that underpin all of these applications but I think I’ll leave it as-is. It’s pretty fun to see how my workflow changes over time.

Thinking Tools: July 2020 Read More »

Fucken softwer devlopers, got no backbone

There are a few things that annoy me to no end and one of them is when software developers have to give in to the marketing critters and start adding shit and cruft to their installers or to the configuration of whatever you install. Case in point, AMD:

Right-click context menu

AMD has zero need to put their stuff there, but they did. So I looked around for a way to remove it and found this post. Given corporation’s propensity to remove things from their forums without warning (looking at you, Intel), I’m just going to repeat the method here:

Hi man!!!

It was my problem too.

Open up regedit.exe through the start menu search or run box, and then browse down to the following key:


Double-click on the (Default) value in the right-hand side, and then add some dashes in front of the value to disable it. You should be able to right-click on the desktop and see that the item is removed.

Turns out that specific registry key also contains the entries for other things, like Dropbox, VLC, etc etc, so I went around changing some things I found disagreeable.

Edit the registry at your own risk

Not my fault if you fuck up your Windows box.

Fucken softwer devlopers, got no backbone Read More »

Coincidence: Software development

This post has been doing the rounds lately. I didn’t pay it much mind, filing it under “at last one developer sees the wrong of his ways.”

I read this, by Cory Doctorow, a few days later. It’s fiction but you betcha something like this will happen. It already may have but if so it has been kept quiet.

Then I found this article on Business Insider.

So yeah, software developers are definitely making the world a worse place and no amount of ethics will fix it. What a developer in the US doesn’t want to do, the company will find someone in Asia or Eastern Europe to write. Market dynamics as applied to ethics.

IoT, anyone?

Coincidence: Software development Read More »

Thinking Tools: September 2016

Gordondoes them every now and then, so I’m going to start doing them too:

  • This site, which I am meaning to most more often to (and not just pictures like I did before). I guess proof is what looks to become a series of posts on my laptop being my router. I’ve posted about how I feel, so it’s progress.
  • Twitter, via Hotot+ on Chrome for the desktop, and Fenix on Android. The problem is that with Twitter Co. being assholes to their devs, Hotot+ has had its API key suspended a few times and Fenix is not really in active development any more after running out of app tokens. Given the current news about Twitter Co. looking to sell itself I wonder what will replace it for me. It’s basically become my social life on the internet, since I’m not really active on IRC anymore. I am on facebook mostly for family.
  • Notepad++: Jot down pretty much anything that pops into my mind. Sometimes I do use it to edit blog posts for usually the text mode WordPress editor suffices. I’ve tried to do a diary of sorts in it but it’s harder than I thought it’d be.
  • Franz I was using the Common Hangouts Chrome extension but Google went and fucked around with Hangouts again, so it stopped working. Pidgin is basically AWOL. Trillian is crap. So after much consideration I gave in and installed it. It looks like crap on my 4k display and Hangouts still has the stupid new interface, but at least it lets me have a single window for what little messaging I do these days.
  • KeePass Been using it for years now. Probably won’t stop ever. Everything wants/needs its own password now.

The most pressing need that I have for myself is a replacement for Tiddlywiki that I can run from this server; it’d probably require me to configure HTTPS but that’s another project worth learning. The main issue then becomes choosing an appropriate wiki that is about as flexible as tiddlywiki without requiring the use of any extensions on the browser. Running this from the server would also allow me to update it from any mobile devices. Tiddlywiki is decidedly desktop software; the clients available for on Android all suck. This is why it’s so pressing for me. I need something that lets me document my life so I can offload stuff from wetware onto software. I’ll keep trying using simple text for now… but I think my mind simply works better using a wiki paradigm. I really do wonder what Twitter will turn into once it doesn’t belong to itself, though.

Thinking Tools: September 2016 Read More »

Sonido en Linux, o la falta de

Tons esta este articulo en el sitio del New York Times acerca del enfoque de Ubuntu en lo Mainstream. Es un buen articulo. Pero nunca va a pasar.

Preguntas por que? Por el sonido. Ya sabes, la cosa que tu cerebro procesa como entrada auditiva.

No voy a decir mucho al respecto, ya que otros lo han dicho mejor de lo que yo lo podría decir:

Yo solamente he tratado de hacer funcionar una diadema con Skype en mi computadora. Tuve que molerle a las cosas durante una hora antes de que Skype funcionara como se supone debe hacerlo. Esto con una diadema barata de 50 pesos sin control alguno; nada de esas chidas diademas USB para mi por que ya se que no funcionan con el sistema operativo de mi elección.

Todos esos APIs, servidores de sonido, sistemas y demonios…. son ganado Augeo cagándose en el establo; necesitan ser llevados al rastro y el establo ser limpiado. Quiza el Sr. Shuttleworth lo pueda hacer.

Sonido en Linux? Esta completamente roto; cada vez que veas artículos anunciando “Este es el año de Linux en el escritorio” por favor procede a abusar del autor hasta que te canses.

Digo esto como un usuario de Linux — tanto en casa como en el trabajo — y como alguien que empuja software libre encima de todo mundo. Supongo tendré que dejar de empujar la gente hacia Apple ahora.

Sonido en Linux, o la falta de Read More »

Linux Sound, or lack thereof

So there’s this article on the NYTimes about Ubuntu’s focus on reaching the Mainstream. It’s a pretty good read. But it won’t happen.

Why, you ask? Because of sound. You know, the thing that your brain processes as auditory input.

I won’t say much about it, since others have already said it far better than I could:

I’ve only tried to get a headset to work on my computer with Skype. Had to fiddle with settings for an hour before Skype worked the way it was supposed to. Mind you, this is a cheap-ass run-of-the-mill headphones-and-microphone headset without any controls; none of those nifty USB headsets for me because I know they do not work with my choice of operating system.

All of those APIs, sound servers, systems and daemons… they’re Augean cattle mucking up the stable, and they need to be slaughtered and the stable cleaned out. Perhaps Mr. Shuttleworth is up to the job.

Sound on Linux? It is completely broken; whenever you see articles announcing “This is the year of Linux on the desktop”, please proceed to abuse the author to no end.

I say this all as a Linux user — both at home and at work — and as someone who pushes open source software on everyone. Guess I’ll have to stop doing that and push people towards Apple instead.

Linux Sound, or lack thereof Read More »

VirtualBox 2.0.6

Actualicen. Hace que Las Cosas Funcionen.

Ahorita tengo mi Nokia E62 conectado a una instancia de WinXP si tener que hacer trabajo adicional aparte del que ya había hecho. Así que todo bien.

Mi iPod de tercera generación también funciona! Los añorados días de Winamp + ml_ipod han regresado. Ya nada de sufrir con Amarok o Rhythmbox! Una razón menos para probar Songbird!

Esto, señores, es Progreso.

No quiero sonar tan condescendiente… pero la mayoría de los programas en Linux todavía les falta un tramo por avanzar, es todo. Me siento mas cómodo utilizando Winamp + ml_ipod, así que si existe una oportunidad de usarlos, la tomaré.

VirtualBox 2.0.6 Read More »

VirtualBox 2.0.6

Do upgrade. It makes things Just Work.

Right now I’ve got my Nokia E62 connected to a WinXP instance without having to do any additional work than what I did before. So it’s all good now.

Hey! My third gen iPod works too! The halcyon days of Winamp + ml_ipod have come back. No more suffering around with Amarok or Rhythmbox! Even less reasons to try Songbird!

This, my friends, is Progress.

I don’t want to sound too condescending… but most music software on Linux still have some ways to go, is all. I’m most at home with Winamp + ml_iPod, so if there’s any chance I can use that, I will.

VirtualBox 2.0.6 Read More »

Direcciones IP estaticas en Ubuntu 8.10

Parece que no soy el único que ha tenido broncas con NetworkManager 0.7 en Ubuntu Intrepid Ibex.

Yo acabe por quitar NetworkManager por dos razones:

  • Necesitaba que mis maquinas virtuales tuvieran acceso a la red local (con Host Networking) en VirtualBox.
  • Los servidores DNS de mi ISP valen pa’ pura madre. Les gusta apuntarse el trafico entre si en un circulo vicioso a cada rato, dejando a todos sin una conexión al internet funcional.

Para configurar Host Networking me encontré un bonito tutorial en el wiki de Documentación de la Comunidad Ubuntu. Los conflictos comenzaron después, ya que note que mi conexión al internet se torno inestable y solamente reiniciando el sistema podía recuperar la conexión.

De ahí esta la situación con los nameservers de mi ISP(Telnor). Fallan por lo menos una vez a la semana y son lentos como la chingada, así que quería configurar mis alternos preferidos de OpenDNS. Lo malo fue que a NetworkManager no le parecía la idea y rehusaba aceptar una configuracion manual. Al tratar de declarar los nameservers manualmente, sobre-escribe el archivo /etc/resolv.conf cada vez que el sistema inicia.

Así que después de lidiar con estas patrañas por un par de días desinstale NetworkManager y puse mi solución en launchpad.

Tengo una configuración de red rara en la cual el módem DSL actúa como el servidor DHCP principal para computadoras conectadas con Ethernet y WiFi. Dado que alkhemy no tiene tarjeta WiFi, estoy usando mi router WRT54G(DD-WRT) como un puente inalambrico; conecto alkhemy al router via Ethernet, el router se conecta al módem DSL via WiFi, por lo cual no hay necesidad de que el sistema “mantenga viva una conexión a toda costa” (tomado del man page de NetworkManager). También tenia la duda de si las maquinas virtuales podrían conectarse a la red sin problemas y si el router podría lidiar con ellas sin darse un tiro; Me puedo saber satisfecho ya que no he tenido problemas después de tener esta configuración por una semana.

Ojala y se arreglen los problemas con NetworkManager mas pronto que tarde. No estoy seguro si otras distribuciones de Linux estan siendo afectadas por esto, pero si lo estan puede que el problema empeore. Ya esta llegando la hora en que Ubuntu tenga una edicion concentrandose en arreglar bichos en lugar de agregarle cosas nuevas. Pero yo que se.

Direcciones IP estaticas en Ubuntu 8.10 Read More »

Ubuntu 8.10 Static IP addresses

It looks like I’m not the only one to have run into difficulties with NetworkManager 0.7 in Ubuntu Intrepid Ibex.

Myself I was forced to get rid of NetworkManager for two reasons:

  • I needed my virtual machine instances to have Real Networking (better known as Host Networking) in VirtualBox.
  • My ISP’s DNS servers suck. They like to point traffic to each other in an endless loop from time to time, leaving everyone without an internet connection.

To setup Host Networking I found a nice tutorial in the Community Ubuntu Documentation wiki. However, after that I noticed some strange stuff happening with my Internet connection, as all access would be lost and only a reboot would get the machine to go back online.

Then there’s the question of my ISP (Telnor) nameservers. They fail at least once a week and are slow as hell, so I wanted to configure my preferred alternates from OpenDNS. Problem was NetworkManager was having none of that, as it will rewrite /etc/resolv.conf on every single boot.

So after dealing with this nonsense for a couple of days I got rid of NetworkManager and posted my solution to launchpad.

I have a weird network setup, in which the DSL modem acts as the main DHCP server for both wired and wireless hosts. However, since alkhemy has no wireless card, I’m using my WRT54G(DD-WRT) router to act as a wireless bridge; I connect alkhemy to it via Ethernet, the router connects to the DSL modem via WiFi, so there’s no need for my computer to actively work on “keeping a connection alive at all costs” (from the NetworkManager man page) There was the question whether the virtual machines would be able to network and whether client router would be able to deal with them without barfing; I’m happy to say I haven’t encountered any issues after running everything for a week.

Hopefully someone will get around to fix these problems with NetworkManager sooner rather than later. I’m not sure if other Linux distributions are being affected by this, but if they are it’s going to get messy. It’s getting to be time Ubuntu had a release concentrating on bug-fixes rather than adding on features. But what do I know.

Ubuntu 8.10 Static IP addresses Read More »

En el fin de semana

El viernes pasado tuvimos al Naza Space Circus aquí en Tijuana. Harta diversión, durante la cual conocí a una muchacha especial que logro que me pusiera de un humor creativo. Lo cual es extremadamente raro, ya que no tengo ni un gramo de creatividad en mis huesos. Pero lo logro, para nuestro disfrute compartido.

Llegue al Hipódromo a las 20:00 exactas y de ahí no llegue a casa hasta las 08:00 del Sábado. Eso seria la primera vez que no he llegado a casa antes de las 3am; chingao, seria la primera vez que no llego a casa pa’ empezar. Ahora veo la parte de mi que ha clamado ser liberada: el Animal Fiestero. No la pienso soltar, resulta muy caro ser uno, especialmente con la economía a punto de ir vertical sobre nuestros traseros.

Una buena noche…

El Sábado lo pase con el niño. Le envidio su cabello, es todo una estrella. Lastima que no tiene todo lo que se merece, incluyendo una buena educación. Aunque duele decirle que no cuando lo veo tan pocas horas a la semana, se tiene que hacer. Quiero que sea un ser humano decente.

Después el Domingo ZeroSoul hizo funcionar un poco de magia con x2x, con seis monitores en tres computadoras siendo controlados con un solo mouse y teclado. Es de lo mas chido que he visto en un rato. Se compara al Synergy, pero hecho a través de SSH.

Así que mas que nada escribo esto para recordarlo en el futuro dado que es probable que lo olvide en el futuro cercano.

En el fin de semana Read More »

Over the weekend

Last Friday we had Naza Space Circus here in Tijuana. Loads of fun, during which I met a special girl who managed to get me into a creative mood. Which itself is extremely strange, as I haven’t got an ounce of creativity in my bones. But manage she did, much to our shared enjoyment.

Got to the Hipodromo at 20:00 sharp, then didn’t get home until 08:00 Saturday morning. That would be the first time I haven’t gotten home before 3am; hell, that would make it the first time I haven’t gotten home at all. Now I see the part in me which had been clamoring to be released: the Party Animal. I won’t get released, it’s too expensive to be one, what with the economy about to go vertical on our asses.

Such fun…

Saturday spent it with the kid. I envy his hair, he’s such a star. Too bad he’s not getting everything he deserves, including a good education. Even though it hurts to say no to him when I see him so few hours every week, it’s got to be done. I want him to be a great human being.

Then on Sunday ZeroSoul got a bit of x2x goodness going, with six monitors on three computers controlled with a single mouse and keyboard. It’s some of the niftiest stuff I’ve seen in a while. It’s comparable to Synergy, but done over SSH.

So mostly I’m writing this up to actually remember it in the future, as I’m apt to forget all this in the near future.

Over the weekend Read More »