All posts
-
My method of learning a new (natural) language in 5 points
1. A habit is better than a burst I am a strong believer in building good habits. My approach to language learning (and also fitness) is that it’s better to do a little every day, than a lot just once. A corollary is that it’s easier when you add your language learning to your day-to-day…
-
Teaching my son to h̵a̵c̵k̵ win at Mastermind
Recently my 4.5 year old son started playing “Mastermind”. This is a game where one player picks a 4 color code, and the other player has to guess it. After each guess, the first player lets the guesser know for how many colors both the color and position were correct, and how many only the…
-
A taste of the secret sauce behind JustTalkTo
At JustTalkTo, we realized early on that the idea is not deep tech. There isn’t really a good justification for machine learning, deep learning, a kernel driver, or low-level optimizations. What we do have is a kick-ass product and the tech to back it up. One of the more interesting pieces of tech that we…
-
A Few Geekcon Tips – Experiences from a Maker Hackathon
A couple of months ago I went to Geekcon. For those not familiar – Geekcon is a “conference/hackathon” for makers – you come, build a ridiculous project, eat some food, barely sleep at all, play a bit with other people’s projects, and then go home. The idea about the project being ridiculous – it has…
-
Working with Intervals
Over the last couple of months my team at Flytrex had occasion to use intervals more than once, and in both cases the team asked me, “What’s the right way to solve this?”. Since this is a common problem, I thought I’d write a short post about it. Most interval problems seem deceptively simple, while…
-
How we deploy with Git
It seems common practice to have a staging and production branches for deploying your code. A common pattern is to push (or pull request) to these branches, then merge the changes. Then, some system watching this branch will notice, and deploy to the appropriate environment. (Another way this is done is with tags, but I…
-
5 useful lessons from writing an app for kids
It always starts with an itch. Today, there aren’t really many good apps to teach kids to read Hebrew. The best one is “Kesem’s Monsters” – and when I tried getting my son to play it, it annoyed me. He liked playing it – but I thought it wasn’t teaching reading all that well. About…
-
5 Tips for more effective logging
Logging is a critical part of every serious project. If logging is not important in your project – you’re probably doing logging wrong. Here are a few lessons I learned over the years running multiple projects. 1 – Reserve ERROR for errors, and everything that is not a bug in your code shouldn’t be an…
-
Validating Flight Networks for Drones – part 2
In part-1 I described how we validate flight-networks at Flytrex to make sure that no two nodes of a flight network are too close. Now let’s turn our attention to validating that no two edges are too close. First, how does one define “edges being too close”? What is the distance between edges? Here’s a…
-
QA by Child
I recently published a home project I was working on, an app to teach children to read Hebrew. I wrote it originally to help my son learn to read Hebrew. In an early version my son was very excited to play it. He quickly understood the principle – see a word, then tap one of…