Posts

Thinkpad L460 webcam issues on Windows 10

 Some colleagues reported flickering webcam issues on their L460 computers. The camera turns on for a couple of seconds and then stops working. With all this remote work it's really annoying. The fix is really simple, just rename the RSProviders folder in C:\Program Files\Realtek. See here for more details: https://www.winhelponline.com/blog/webcam-anniversary-update-windows-10-yuys-standard/ I suspect this applies to L450 and L470 models too.

Lego Mindstorms NXT Brick on Windows 10

Image
I have an old NXT Brick at home, and tried to get it to run to teach my son a bit of programming. It turns out that this is quite hard in 2021 with Windows 10. After a while I figured it out! It turns out that there are 3 types of software: The old NXT Software -> does not work in Windows 10  The new EV3 app (from the Microsoft store) -> does not support NXT Brick  The Retired EV3 app (installable .exe) -> Supports Windows 10 and has a backwards compatible mode for NXT Bricks.   So, if you have an NXT Brick and Windows 10, you need the Retired EV3 software. It's shown on the lego website like this: I hope this helped you.

AI Text-to-Speech models have accents too

While playing around with the Web Speech API  I discovered something interesting: if you let the Dutch voice speak English text, it sounds remarkably like the typical "Dungrish" accent (Dutch person speaking English). I didn't expect this. Obviously the AI was not trained on reproducing foreign accents, but it still does! Very interesting to see what happens if you let the voice speak a language it was not trained on You can play around with it here if your browser supports it, or try the examples below: Select the voice, this might be empty if your browser doesn't support text to speech Enter the text you want spoken Hello good sir, can you please tell me what twenty times ten is? Or try these ready made examples: English text spoken by Dutch voice English text spoken by Hindi voice English text spoken by Italian voice English text spoken by French voice English text spoken by German voice English text ...

Default HTML5 camera input broken on Android / Chrome

Image
I'm trying to create a simple web app for smartphones that lets the camera app take a picture. The standard html5 is super simple: <input type="file"        accept="image/png, image/jpeg"> https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/file So I tried this. $ cat index.html <!doctype html> <html>     <body>         <form action="/store-image/">             <label for="img">Select image:</label>             <input type="file" id="img" name="img" accept="image/*" capture="camera">             <input type="submit">         </form>     </body> </html> $ python3 -m http.server    I go to my phone. Camera pops up, I submit the picture, and ... "Unable to complete previous operation due to low memory". Ok, the simplest stock html...

Comments as first class citizens

In the future it will be possible to link comments to sections of code, instead of just writing them a couple of lines above of it. Today, comments are second-class citizens that frequently get out of sync with the reality of the code. This is because working on code is done when the brain is in spotlight mode: we first look at this piece of code, which calls this function, which calls this method, etc. . The brain jumps from line to line, and misses the context around it. Documentation and comments are more holistic and should not be in-line with code, as they are something different entirely. Comments are "about" the code, not code itself. In a merge request, you should see the changed piece of code with the comments that are applicable to it. These can be locally (like the comments that today are in the same file), but also an architecture document could refer to sections of code that implement the architecture. In the IDE, and certainly in a merge request, the developer...

What's so terrible about software?

Image
[this is a work in progress] One of the things you should understand before reading this series of blog posts, is why I think software is so terrible. I also think it's amazing, but that's another post. 1. Very little standardization Check out this little map from the Cloud Native Computing Foundation. This map is what's wrong with the software landscape today. My thoughts are very well expressed by the late Joe Armstrong in this talk . 2. Software "evolved" to where we are now 3. Technology is disrupting our lives and our culture You probably recognize these trends:

What's so great about software?

[this is a work in progress] One of the things you should understand before reading this series of blog posts, is why I think software is so amazing. I also think it's terrible, but that's another post. 1. It is ridiculously cheap to get started with software. Carving wooden toys is probably cheaper because you only need wood and a knife, but for software, you need: - the ability to read and think somewhat logically - a second hand laptop, which you can buy for about $50 - $100 - power - an internet connection (or a manual) Mind you, it will take lots of time and effort 2. It is practically free to copy digital resources. All things that can be stored digitally can be copied for almost free. If you wanted to reach thousands of people before  3. It is ridiculously cheap to scale software. WhatsApp famously scaled to a billion (?) users with a team of about 50 people. Their servers each connected millions of users at the same time. With clever engineering, any...