Understanding Your Internet Quality, Bandwith, Ping/Jitter, and Jamming with your Mates over JackTrip Remotely!
From what I can tell, nearly everyone struggles with their Home Network sooner or later. Having gone through numerous routers and setups, I am going to be posting a series of articles on the subject, with one goal: how to get the best out of your Internet Provider Connection.
FOSSA, Inc. is Hiring Talented Engineers, remote or not, and trust me — Its Awesome!
I know you are tired of COVID and social distancing. We all are. But — are you also tired of the old job? Ready to do something fun, learn something new, work with great people, AND serve open source community at large? Doesn’t get much better than that.
Yes! It's 2021, and Ruby 3.0, and Ruby on Rails 6.1 are alive and thriving. Are you?
The decision of which framework or language to choose from is not a simple one and rests on both the company values and project values. For simplicity’s sake, we can refer to values or priorities.
Turbo Agile™: Optimizing Efficiency of the Engineering Process for Maximum Velocity.
This post is about a software engineering process most similar to what is practiced by Pivotal Labs consultancy, with some SCRUM sprinkled in, and with some tweaks and adjustments applied.
Writing command-line utilities in Ruby.
You may or may not know that I love writing CLI utilities in Ruby and open-sourcing them as ruby gems. You can install a ruby gem with gem install name on nearly any UNIX system, including a Mac.
Test your Understanding of Ruby Concurrency
Test your understanding of how Ruby Concurrency works with these two simple multiple-choice questions.
Building IntelliJ Bazel Plugin from Sources
Overview of Bazel support in IntelliJ Family of products, and instructions on how to build the plugin from sources.
C++ Newbie Tour: Getting Started with C++ on Mac OSX
In this post we’ll explore some of the things that a beginner C++ programmers (but not general beginner programmers) might find useful in getting quickly up to speed.
C5 class instance on EC2: cannot create file: Read-only file system
In this short post I describe the read-only file system issue that happened to one of our C5 hosts, and how we fixed it.
Dead Simple Encryption with Sym
Most of us are familiar with the concept of application secrets, how important it is is not to commit those to your version control system, and how challenging it is to distribute development and production secrets across the dev team in a consistent and, most importantly, secure fashion. In this post we introduce a new Ruby Gem called 'Sym' for symmetric encryption.
Add a Social Activity Feed for your Site in Minutes with the simple-feed Ruby Gem
This gem implements a flexible time-ordered activity feeds commonly used within social networking applications. As events occur, they are pushed into the Feed and distributed to all users that need to see the event. Upon the user visiting their 'feed page', a pre-populated ordered list of events is returned by the library.
Traktor File Management Fixing Could Not Read Collection Playlist File Error
Wrestling with Native Instruments Traktor file management — playlists and organizing music.
Building Scalable Performant And Cheap Distributed Applications Part 1
With this post, I’d like to start a series of DevOps-related conversations about building distributed applications (read: common web-apps). Folks running enterprise application use different technologies and are hosted across a range of cloud providers, and yet are often faced with very similar problems.
Mixmax And My First Nodejs App.
MixMax enhances, enriches, extends (EEE!) the standard Gmail functionality with a lot of goodies, accessible from both the GUI as well as via the slash commands while composing an email.
Scaling Web Applications On Postgresql A Walkthrough Presentation
In this exciting and informative talk, presented at PgConf Silicon Valley 2015, Konstantin cut through the theory to deliver a clear set of practical solutions for scaling applications atop PostgreSQL, eventually supporting millions of active users, tens of thousands concurrently, and with the application stack that responds to requests with a 100ms average.
Serial Console Hacks With Arduino
In this post I’ll share a method that I use to connect to a Serial port of any Arduino I am using at any given moment. This method has a caveat, in that if you have more than one Arduino connected, it will pick one of them at random.
Electronic Music, DJ-ing, tracks and Moods for Take Out...
Its about time we talked about my other obsession — music. You might now this, but I’ve produced and released two albums on iTunes and CDBaby. More info inside.
How To Use Arduino Nano Mini Pro With CH340G On Mac Osx Yosemite
Recent versions of cheap Arduino clones have been coming out with a different USB/Serial chip, which replaces the usual FTDI. The chipset is called CH340G and this post explains how to install the drivers for it on both Mac and Windows.
Announcing Laser Cutter and MakeABox.IO
LaserCutter & MakeABox.io — its a ruby gem and a website for making PDF designs of laser-cut boxes, which fit/snap in together at all edges using tabs that go in and out. The output of the library is a PDF document. Typically next step would import that PDF into Adobe Illustrator for additions and touch ups, and then sent off to a laser cutter for the actual, well, cutting.
BORAT: Bathroom Occupancy Remote Awareness Technology with Arduino
Occupus (formerly BORAT: Bathroom Occupancy Remote Awareness Technology) – is an Arduino-based restroom occupancy detection and rapid notification system based on a network of nRF24L01+ 2.4GHz RF radios. It supports multiple (up to 5) casters (each installed in a bathrooms) and a single reporting unit.
Books on Being a Maker
Review of the list of books on being a Maker that I’ve been reading and thoroughly enjoying.
How It All Started
In this post I share the story of how I got myself into Hardware programming with Arduino.
BackSeat Driver: Autonomous Vehicle Library for Arduino
Back Seat Driver is a library for programming autonomous (or not) Arduino based robots. This library provides a convenient non-blocking command API to programmatically drive an autonomous vehicle. Current implementation is aimed at a 2-wheeled robot, with the two Servo motors setup opposite each other. Therefore to move the robot forward (or backward), two Servos need to rotate in the opposite direction (this is certainly true in the current version of the library, but may be more flexible in the future if need arises).
Twelve Step Program For Scaling Web Applications On PostgreSQL
In this exciting and informative talk, presented at PgConf Silicon Valley 2015, Konstantin cut through the theory to deliver a clear set of practical solutions for scaling applications atop PostgreSQL, eventually supporting millions of active users, tens of thousands concurrently, and with the application stack that responds to requests with a 100ms average. He will share how his team solved one of the biggest challenges they faced: effectively storing and retrieving over 3B rows of 'saves' (a Wanelo equivalent of Instagram’s likes or Pinterest’s pins), all in PostgreSQL, with highly concurrent random access.
Detangling Business Logic in Rails Apps with PORO Events and Observers
With any Rails app that evolves along with substantial user growth and active feature development, pretty soon a moment comes when there appears to be a decent amount of tangled logic, AKA technical debt.
How to configure PostgreSQL for very high read/write throughput
In this post, I’ll go over some of our settings in postgresql.conf, which have been adjusted for high-performance/throughput and large RAM sizes. I would like to credit Josh Berkus and his PGExperts consultancy for providing us with timely and necessary assistance in tuning PostgreSQL these last few months.
The Case For Vertical Sharding
In this post I share the story of overcoming a massive scalability bottleneck from too many writes ino the Analytics database table used for Event collection, using Vertical Sharding.
The Big Switch How We Rebuilt Wanelo From Scratch And Lived To Tell About It
In this post we share the details of what we did and what we learned, in case someone out there ever finds themselves in a similar situation, weighing the risks of either working with a legacy stack or going full steam ahead with a rewrite.