|
In the last article we created a receiver function that listened to signals from our foot controller and started or stopped playback on consecutive clicks. The trouble with our player it that it only works until the end of the track. The start! function does not automatically rewind the playback. Neither stop! does that. Our program is responsible for detecting that the track should be rewound, perhaps by detecting that we reached the end....
|
|
In the last article we created a receiver function that listened to signals from our foot controller and started or stopped playback on consecutive clicks. The trouble with our player it that it only works until the end of the track. The start! function does not automatically rewind the playback. Neither stop! does that. Our program is responsible for detecting that the track should be rewound, perhaps by detecting that we reached the end....
|
|
Continuing our series from 2012 where I accidentally ended up combating phishing and fraud for a year, we move onto the spam issue. Everything that happened that year was an exercise in triage. Problems were everywhere on the system and in the marketplace. The site I was working on was the leader in a niche space but it wasn't just the phish who tried to capitalize on the chaos, it was our competitors too. Spam takes a time investment and e..
|
|
macOS has a wonderful input mechanism where you press and hold a key on your keyboard to display the accent menu. It's easy to internalize: long press "a" if you want to input "á" . On Emacs, C-x 8 ' a would be the equivalent, but it just didn't stick for me. Fortunately, there's an alternative, using dead keys. Mickey Petersen gives a wonderful introduction . Having said all this, I still longed for macOS's input mechanism. Than....
|
|
Repository: @knadh/listmonk GitHub release page: v2.2.0 Although delayed by a couple of months, v2.2.0 is here finally. New: transactional messaging The biggest new addition is the new transactional messaging feature. See docs .
|
|
In light of the current short supply of Raspberry Pis, I want to share information about an alternative single board computer, the Odroid N2+. The Odroid N2+ can be used to host a number of applications using Docker. Portainer makes the administration of Docker containers easy on the Odroid N2+.
|
|
Lately, I’m working on a new tool which will help me to automate the tasks I manually do using my desktop computer. While these tasks are mundane, they increase life quality of me and many individuals. As I mentioned before, I won’t have a Linux desktop system, and will move to a Mac laptop. Naturally, I wanted to move these workflows to macOS. Moving these workflows to macOS is indeed possible. However, I wanted to automate them to sav....
|
|
Lately, I’m working on a new tool which will help me to automate the tasks I manually do using my desktop computer. While these tasks are mundane, they increase life quality of me and many individuals. As I mentioned before, I won’t have a Linux desktop system, and will move to a Mac laptop. Naturally, I wanted to move these workflows to macOS. Moving these workflows to macOS is indeed possible. However, I wanted to automate them to sav....
|
|
I’ve been writing a bit of TypeScript lately, and have needed to learn some strategies to test private functions that are not class methods. With class methods it’s straightforward since you can use array access to get to them, but with functions it seemed a bit trickier.
|
New Avatar movies are in development, let's use that as an excuse to have a new Avatar franchise por...
|
|
From David Heinemeier Hansson: It’s human nature to assume there’s a good reason for why things are the way they are. And that this reason is either benign, based on careful deliberation, or malignant, derived from malice or incompetence. But this is a false dichotomy that often steers us away from the simpler answer: Nobody thought about this at all. Given an absence of information, many tend to fill those gaps with generous assump..
|
|
How do you process and classify text documents in Python? What are the fundamental techniques and building blocks for Natural Language Processing (NLP)? This week on the show, Jodie Burchell, developer advocate for data science at JetBrains, talks about how machine learning (ML) models understand text.
|
|
Suppose you are looking for a juicy and thought-provoking read on Italy’s twentieth-century crucial moments. In that case, I heartily recommend Italica by Giacomo Papi, a significant collection of short stories by prominent Italian writers of the period including the likes of Italo Calvino, Elsa Morante, Beppe Fenoglio, Natalia Ginzburg, and Giorgio Scerbanenco. A short essay introduces each tale. I thoughtfully appreciated these introduct..
|
Augmented reality is coming, and shitstorm is coming with it. We still have time to avoid the worst. This is part 2: Speculative endings from alternate futures.
|
Augmented reality is coming and a shitstorm is coming with it. We still have time to avoid the worst.
|
|
Repository: @knadh/otpgateway GitHub release page: v3.1.0 Changelog e83af28 Merge pull request #26 from mr-karan/master 4b7b8c4 feat: add entries in .gitignore c53f24c feat: replace stdlib logger with logf
|
|
CloudQuery and Steampipe have very similar functionalities. The actual difference is with the way they work and the problems they solve. This blog post compares both the tools and helps you answer the question: What should I use - CloudQuery or Steampipe?
|
jOOQ is mainly known for its powerful type safe, embedded, dynamic SQL capabilities that are made available through code generation. However, a secondary use case of code generation is to use it for stored procedures (possibly exclusively for stored procedures). Stored procedures are powerful ways of moving complex data processing logic to the server. This … Continue reading The Best Way to Call Stored Procedures from Java: With jOOQ →
|
|
About fifteen years ago, Casey Treat spoke at our church about goal setting. He explained that a lot of people set a goal of reaching a certain weight and he said the problem with that occurs when you reach that weight.
|
|
About fifteen years ago, Casey Treat spoke at our church about goal setting. He explained that a lot of people set a goal of reaching a certain weight and he said the problem with that occurs when you reach that weight.
|
|
Most companies and projects are by far not big enough to benefit from microservices, and not good enough to deal with the implications and repercussions. There’s a reason “distributed systems” are hard: it’s the next difficulty level after multi-threaded concurrency — harder to observe, harder to reason about.
|
|
A buffer overflow attack is the exploitation of a buffer overflow vulnerability, typically by a malicious actor who wants to gain access or information. In this post, we’ll explain how a buffer overflow occurs and show you how to protect your C++ code from these attacks.
|
|
This article critiques the TIOBE Programming Community index and provides better ways to evaluate programming languages for projects and as a developer.
|
|
I had an interview for a Ruby developer position. As part of a live Rails coding session a class performing operations needed refactoring into supporting services. Let's say the logic in question is query = 'troglodytes troglodytes' response = URI . open( "https://xeno-canto.org/api/2/recordings?query=#{ CGI . escape(query) }" ) if response . status [ 0 ] == '200' body = JSON . load(re....
|
|
Added a few improvements to dwim-shell-command . Dired region In DWIM style, if you happen to have a dired region selected, use region files instead. There's no need to explicitly mark them. Clipboard (kill-ring) replacement Use <
|
|
Over the past years I attended hundreds of interviews. Many candidates proudly told tales on how they develop their projects with a microservice architecture. Often (I don’t want to say “always”, but from my memory I think it actually is “always”) it does not require many questions to see that they used a rocket launcher to kill a mouse. Microservices are hard . Everyone who experienced the pain of operating such an architecture can rela..
|
|
I had an interview for a Ruby developer position. As part of a live Rails coding session a class performing operations needed refactoring into supporting services. Let's say the logic in question is query = 'troglodytes troglodytes' response = URI . open( "https://xeno-canto.org/api/2/recordings?query=#{ CGI . escape(query) }" ) if response . status [ 0 ] == '200' body = JSON . load(re....
|
|
This article critiques the TIOBE Programming Community index and provides better ways to evaluate programming languages for projects and as a developer.
|
|
To celebrate Disability Pride Month, Snyk’s Director of Inclusion, Equity, and Diversity, Ashley Ladd (she/her), sat down with Alex Fallon (they/them) to discuss what Disability Pride means to them, how able-bodied people can be better allies and advocates for the Disabled community, inspirational figures, helpful resources, and so much more.
|
|
One of my favourite podcasts is Hanselminutes by Scott Hanselman. I have been listening to it probably longer than any other podcast. He recently interviewed Roberta Arcoverde from Stack Overflow. She talked about how the architecture of the Stack Overflow site is very different from most other large sites in that it is a self hosted monolithic application.
|
|
One of my favourite podcasts is Hanselminutes by Scott Hanselman. I have been listening to it probably longer than any other podcast. He recently interviewed Roberta Arcoverde from Stack Overflow. She talked about how the architecture of the Stack Overflow site is very different from most other large sites in that it is a self hosted monolithic application.
|
|
Pizza courtesy of Pizza for Ukraine! Donate Now to Pizza for Ukraine This blog post looks at testing rails apps with FactoryBot and MiniTest – the default test framework which ships with Rails. It does not use RSpec and RSpec is NOT required for use with FactoryBot. Note : I believe that MiniTest is the name of the standard rails testing framework. Oddly I've had issues confirming that so if I'm wrong please feel free to tell m....
|
|
I am happy and humbled to have been awarded the Microsoft MVP Award for the seventh consecutive year. July 1, the award assignation day, always comes with curiosity and a bit of trepidation. Being a member of the MVP community has been a very positive experience for me, especially in the years before COVID, when the MVP Summit, the main MVP event, was held in person in Seattle at the Microsoft HQ. That assembly of experienced developers f..
|
In the debate of work-life balance versus work-life integration it seems as though balance is winning out over passion as more and more people view life as the hours spent between clocking in and clocking out. Why is this viewpoint dominating and does it lead to a fulfilling life?
|