Ready For Takeoff

Mastodon simply explained

Why it is not Twitter and never will be

This weekend I had a revival experience. I got myself a Mastodon account, after many years of staying away from social media as far as I could and at most tweeting a new blog post. Since my active Twitter days, things have taken such a turn for the worse, that I’ve preferred to stay away completely.

I don’t know what made me join Mastodon on Sunday, but it sparked something in me: The love for the good old internet of the late 90s, early 2000s. These guys gave me a warm welcome and made me feel that Internet communities, away from sleazy influencers and banner ads, could actually still work. I got a taste of it, when I let this blog become part of IndieWeb over a year ago, but didn’t quite believe in it because of the low traffic and mentions.

Now the richest man on the planet has to come along and buy the bird site, and a niche product called Mastodon, well known but underestimated in tech circles, almost explodes under the onslaught of disappointed commercial users. And that’s what we are on Twitter, Facebook and Co … a commercial object.

The problem now will be how the community can integrate these many users for whom it was not mentally prepared. What now adapts to whom? The most important thing, however, will be to teach the newcomers (and I count myself among them) that Mastodon is not Twitter in new clothes!

I was going to write a few things about this, but this morning I read a Twitter thread from Peter Jakobs, a self-proclaimed digital Aboriginal from Germany, that just sums it all up and explains it so well I could hardly do it:

Tweet from Peter Jakobs, November 29, 2022

That’s why I’m now doing something I’ve never done before: I quote Peter here completely, translated from German into English … Curtain up (and thank you DeepL :D):

Continue reading ...

Syndicated at
Botanical Coexistence

Syndicate Mastodon Hashtags in your favorite Feed Reader

Ok, I admit it: I read RSS feeds. Quite old school you might think, but I’m mostly off Social Media and the most news sites quite a while ago, with a few exceptions. I just want to read selective stuff, especially in the direction of technology, and not interrupted by items, the news provider think I have to read. My favorite tool for my feed collection is Feedly, which I open up almost every morning.

Today, Max Böck gave me the momentum with his article The IndieWeb for Everyone to try another type of social media I know for quite a long time, but never give it a chance: Mastodon. I’m now part of it on indieweb.social.

Continue reading ...

Rocky Stairway

Anatomy of Service Worker Communication

Let your App communicate with its Service Worker

I have a SPA that works as a PWA, which means that in the background a service worker makes sure that the required files for the offline mode end up in the cache.

From time to time I also update the Service Worker, which defines which files it should keep offline and which not. Unfortunately, the app itself didn’t get any of this because there was no communication channel for them to talk.

If you research this topic on the web, you have to dig through many architecture pages and documentations that have one thing in common: sometimes they just don’t get to the point. So here are my 50 cents on the subject and my sample implementation.

Continue reading ...

Syndicated at
Garden Beauties XIV
Discoveries

Discoveries #20 - CSS & UI

Web interfaces are unthinkable without CSS. It has its pitfalls, but when used correctly it’s damn powerful. It’s always incredible what developers do with it. This month’s Discoveries is about the basics and the amazing.

  • My Custom CSS Reset
  • Defensive CSS
  • 10 Useful CSS Tricks for Front-end Developers
  • Animated Star Rating
  • CSS Marquee Examples
  • CSS Rolling Text
  • Cool Hover Effects That Use CSS Text Shadow
  • Solving 'The Dangler' Conundrum with Container Queries and :has()
  • Conditionally Styling Selected Elements in a Grid Container
  • Intersection Observer Scrolling Effects

Continue reading ...

Ancient Cockpit
Golem

One mouse to rule them all

Multiple monitors on one computer are elementary for effective IT work. However, operating multiple computers with one input set requires tools, for example one from the Microsoft Garage.

The trend is toward second or third devices, especially among IT workers. In addition to the stationary computer, which may still be under the desk, there is a laptop and possibly a tablet. All of them are connected to cloud services. If the desk is large enough, there may be two monitors and a full-size keyboard connected to the desktop, the laptop on the left, on which two or three special programs are installed, and the Surface tablet on the right for communication with its narrow-track keyboard. And spread out on the table are three mice in different colors so as not to constantly get the wrong one. A scenario that the author of these lines was also confronted with … yes, until a few years ago a small tool for Microsoft Windows fell in front of his feet, which abruptly ended the input chaos: Mouse Without Borders.

Continue reading ...

Old Master Veggies II

Creating Icon Font from SVG Files

A several years ago I started building a little PWA and chose Bootswatch 3.3.5. for theming. As it depends on Bootstrap I was able to use the icons from Bootstrap. At the beginning I needed only a handful of these icons, but with the time it became more and more difficult to find the right one, because the Bootstrap Glyphicons in version 3 included only around 250 icons and there was not always the right one. Also, the app was always lugging around well over 100 KB of extra files, of which I actually only needed a few kilobytes.

In another project I had used Fontello, where you can build and download your own icon font from a selection of available icons. Very nice, but I didn’t feel like fiddling with project-specific configuration files on the Fontello website. But since you could upload your own SVG files in Fontello, which were then taken over into the font, the same had to work somehow with a Node.JS plugin!?

And yes gulp-iconfont from Nicolas Froidure was exactly what I needed.

gulp-iconfont on GitHub


First Solution

Just copy a bunch of SVG files in a folder, run gulp and there was my own customized icon font with a tolerable size of around 20 kilobytes. At that time, Thomas Jaggi had taken care of the creation of a CSS file with the correct code points that matched the font with his tool gulp-iconfont-css.

Continue reading ...

Syndicated at
Thomas' Garden VI
Golem

Dopamine, a music player for Windows 10 as it should be

A minimalist MP3 player under Windows, distributed as open source, which does not shy away from large collections

There are about fourleventy millions music apps for smartphones running Android and iOS. However, most of them are relatively junk or try to foist malware on users. You have to make sure that you separate the wheat from the chaff. On the other hand, the situation is surprisingly different for Windows, the much older operating system. The older ones of us will still remember the glorious WinAmp times, whose current owner Radionomy has been making a very long new attempt for a new version 6 since 2018 (version 5.8 is already a handsome 6 years old), but you can actually count the good music players for Windows 10 and higher on one hand, if you subtract the streaming apps such as Spotify and Co. and disregard everything that comes along as a jack of all trades and can ALSO play MP3. The best known are the in Windows included and miserably failed iTunes clone from Micosoft called Groove, AIMP, foobar2000, MediaMonkey and MusicBee. Some nostalgic people might also add the good old Windows Media Player, which managed to survive on the net despite Groove. If you look at the download pages of these music player candidates and try to look behind the business model, some of them simply do not download. One or the other player also overdoes it with the featuritis. Bouncing balls or bars to the music are gimmicks that were thought to be outdated long ago, when it is actually only about listening to music.

Belgian software developer Raphaël Godart (twitter.com/RaphaelGodart) must have felt the same way a few years ago when he set out to launch his own player for local MP3 collections, which in this case sounds falsely commercial because his player Dopamine is freely available on GitHub and open source under GPL 3.0 license. It plays music under a plain and simple, yet chic interface … Period. Everything a music lover’s heart desires is on board:

Continue reading ...

Syndicated at
Nyhaven
Lightroom Presets

Scandinavian Presets for Lightroom

It doesn’t matter what time of year you go to Scandinavia. Countries like Denmark or Norway have a Nordic charm that you can never really escape. But it doesn’t always have to be the far north that provides fascinating motifs for photographers. With these Lightroom presets you can enhance your images with the Nordic feel.

Continue reading ...

Manometer
Golem

Gitpod - Visual Studio Code on the Web

The popular code editor is conquering the browser and remote work and the Kiel-based company Gitpod is at the forefront with their solution

It’s amazing how quickly the editor Visual Studio Code (VS Code) has conquered the developer community (#1 in the Stack Overflow Developer Survey Ranking 2021) and even those from the Linux faction, who are historically rather critical of Microsoft, but for good reason. The company from Redmond has done quite a lot right with the tool and has gathered a large group of open source developers around it (currently 1,640 contributors), who contribute to the fact that the Swiss Microsoft team around Erich Gamma can bring out a new release for Windows, Linux and macOS every few weeks.

It all started with the Monaco Editor, the core around which VS Code is built and which was first released on April 14, 2016. The exciting thing about Monaco and VS Code is, that it is consistently written using web technologies, i.e. HTML, CSS and Javascript, packaged and executed using the framework Electron developed by GitHub, which in turn is based on Node.js and the open source browser engine Chromium from Google.

Continue reading ...

Thomas' Ruby Prince I
Discoveries

Discoveries #19 - Visual Helpers

Colors and images are the visual meat on the boil of any web solution. If you don’t convince the visitor’s eye, they will quickly leave and if users have to work with a visually poor solution, they will be too dissatisfied, no matter how well the algorithms work.

Below are a few JavaScript libraries that help to create appealing interfaces.

  • Color Thief
  • Vibrant Colors
  • Color.js
  • TinyColor
  • Qix color
  • Alpha Paintlet
  • DOM to Image
  • imagesLoaded
  • Graphery SVG
  • Flickity

Continue reading ...

Nature Finds A Way

Old Sweetheart Rediscovered

OutlookSignature lives on as Go application

It seems like ages ago that I wrote a tool called OutlookSignature with Visual Basic 6 and put it on the web on my old German blog zerbit.de. But the WayBackMachine says something different. Started in 2006, I released the last version 1.9 at the beginning of December 2008. Just 14 years ago…

OutlookSignature on zerbit.de ten years ago

The thing was a command line tool, that could be used to automatically generate signatures for Microsoft Outlook in the three formats TXT, RTF and HTML, for example centrally via a Windows login script for the entire organization. No hassle anymore for the users on creating an appropriate mail signature and no more stress for the marketing department in enforcing a uniform appearance. It was based on templates with placeholders for the data and configurable via an INI file. The data could come either from the ActiveDirectory via LDAP or from any database.

Continue reading ...

Syndicated at
DJing II

Simplest Console File Logger

How to implement your own logger with just a StringBuilder in C#

When you need to do a task in IT and don’t need a fancy user interface, you usually turn to a console application or develop one. But no UI means not, that you don’t want to get some information about the status of the running program. The means of choice in C#/.NET is then the output of certain values in the console via console.WriteLine().

But often these applications are supposed to run in the background or hidden, so that crashes or errors are not immediately noticeable if you don’t have at least a rudimentary logging built in. Such logging is also useful for the later evaluation of program runs. For this reason pretty much all programs log in some way. Currently there an incredible number of logging frameworks available, that make it to the news every now and then, like Log4Shell for Java.

The best known in the .NET area is Microsoft’s own ILogger (Microsoft.Extensions.Logging), log4net, NLog and Serilog. What they all have in common is, that they are highly flexible in terms of configuration, usage and storage of the logs. On the other hand, they are fat beasts, you have to learn to handle first and you have to deliver with the program always. The latter does not apply to the ILogger, but Microsoft has been known to complicate things so unnecessarily that it is almost no fun anymore.

Many times this overload is simply not necessary, when you just need a log file for each run of your console application. Let me show you, how to achieve this with a dead simple StringBuilder

Continue reading ...