Hey parents, I’m dropping out

This is the email I sent to my parents (siblings, uncle and aunties were CCed) a few years ago telling them of my decision to drop out of Unilag. Good day everyone, I think it’s important that I try my best to explain my thought process. I’ve attempted

Simpler parameter handling for Interactors

At BuyCoins, we use the Interactor gem for business logic. It works like this: Say you have an Interactor called SendCoins. You call can trigger it’s functionality by doing SendCoins.call(amount: 0.5, currency: Ethereum…) The has passed into #call will be available within the Interactor as attributes

2018.

悪いエネルギーは遠くに留まります (This read – and honestly any other one – would be nicer if you had Feral Thing by Josin playing.) *Cue the longest, most unnecessary intro ever!* Since 2014, I’ve been writing these end of the year things on Medium. It’s that time again and I’ve spent the

iPhone XS (Max) Review

iPhone XS Max Review I’ve spent a few months with the iPhone XS Max and I finally have conclusive thoughts. Here they are: (You can read my iPhone X review from earlier this year here.) The Screen The first thing I noticed immediately I held the iPhone XS Max

Ruby’s Prepend: How is it useful?

With a real world example This article introduced me to Prepend. It does a really good job of explaining the keywords below & the ancestor hierarchy. As such it’s a good idea to read it before mine. I decided to write this to show my real world use-case of

front-end vs back-end vs client-side vs server-side

If you’re an experienced (web) developer like I am, the words in the title make complete sense to you and are pretty basic. In talking to a few beginners recently, (as part of my attempts to come up with a sort of curriculum), I found out that they often

Introducing BuyCoins

Vanishing Dwin.

My initial plan was to write these articles in chronological order because I actually remember which edible episode came before which. But as we all know — man proposes, an intoxicant disposes. This article is a result of my session two days ago. Hope you can at least tolerate it. “When

Infinitree — Part 1

This was my earliest attempt of writing stuff while baked. This one was a lot of fun because I didn’t finish it in one session. I’d write a bit, come down from the high, think it’s crap, get wammed another day and continue. I actually already initially

Ink

It could be because of the research I had to do for the VR project I was working on with my brother. I hadn’t delved into any physics topics in a while but I’m pretty sure I’ve not been fascinated by many the way this one fascinated

Reusing Redux Containers with multiple Components in React.

If you’re using react-redux then you should be familiar with the code below. // SomeContainer.jsx const mapDispatchToProps = (dispatch) => ({ ... }); const mapStateToProps = (state) => ({ ... }); export default connect(matchStateToProps, matchDispatchToProps)(SomeComponent); And then in your file that handles routing (or wherever). You’d have something like this. <Route exact path=

Rails GraphQL Server Tips — Part 1, Authentication.

I decided to write a series of posts that show how I do certain things with graphql-ruby in server side Rails applications. Today, I’ll be showing how I handle authentication. Understanding this article requires some knowledge of GraphQL, Rails & how to use devise (or some other authentication gem

Primer: State management (with Redux)

I recently started doing React + Redux development and Redux took some getting used to. So I decided to write this to make it a bit easier for the next beginner to understand. My aim with this is to explain the ideas behind libraries like Redux and not focus on the

iPhone X feels like the future.

iPhone X is the “10th” iPhone from Apple and it’s meant to show us what the future of the smartphone looks like. I’ve spent about 1.5 months with the iPhone X (256GB, Space Grey)and I’m ready to take you through what that experience has been

Quick Review: Nintendo Switch

About the Switch The Nintendo Switch is a “hybrid” console that was released March last year. By hybrid, they mean that it’s both: * a portable/hand-held console (like the GBA or Nintendo DS). The Switch itself is a 6.2 inch tablet that supports up to 720p resolution. * a

2017. Sentō kaishi

(This read — and honestly any other one — would be nicer if you had Final by Wilsen playing.) Sentō kaishi. This simply means “battle start”. It’s the thing you hear just right before you start mashing a game controller when playing Naruto: Ultimate Ninja Storm. Not only does it sound

Tiny jsonb gotcha in Rails

If you’re using Postgres 9.4+ in your Rails application, you get to create columns in the jsonb type, which lets you store non-relational data. To do this, you add the column in a migration as usual, like so: add_column :users, :preferences, :jsonb, default: '{}' Now, you

A Rant about Productivity

This was originally published on superyesmore’s The Human in The Machine. In certain (developed) countries, where a healthy amount of productivity role models hail from, productivity has been pretty much nailed down to a science. Form habits, create schedules, minimize distractions etc etc. Obviously, I’m simplifying things a

Introducing Bitkoin Africa

Problem It’s quite difficult to buy and/or sell BTC (or other cryptocurrencies) in Africa. Currently, in some countries, bitcoin exchanges exist but they don’t provide the best possible experience with little or no barrier to entry. Card payments or direct bank payments aren’t possible which are

Securing requests between two back-end applications

I’m working on a super-top-secret-but-not-really-maybe-cryptocurrency-related web product and I eventually ended up needing two back-end applications; one built in Rails and the other in Node.js The Rails application makes HTTPS requests to the Node.js application for very important things and as such securing that communication is of

There is no hope for Nigeria

I’m guilty of occasionally assuming that there’s hope for a dramatic change in the general state of things in my home country. But luckily, frequently enough, something happens that resets my head to reality mode. I saw some news yesterday, that in retrospect, is pretty normal as far

Getting JSON Body from Retrofit Error (Kotlin)

Update: You can see the class we end up writing, but in Java here. I started using Kotlin in Android, yesterday. Yes, yesterday. I haven’t even done serious Android development in a while, so I was completely lost; drowning in terms like rxjava, LiveData, MVVM, AAC, Dagger and all

Testing graphql-ruby resolve classes with rspec

This is going to be a relatively short post. It’s something I just did and felt like sharing in the moment. I have this project that uses graphql-ruby (it’s an amazing gem). As you quickly find out, it’s neater to have separate classes to DRY up commonly

Yes, another Twitter app.

Generally, my experience with Twitter for Mac hasn’t been good. It’s probably much better these days, but my issues with it are: * Too much time passes between updates. * Due to the above problem, any time a new “tweet type” is introduced it takes ages before Twitter for Mac

GraphQL: New, shiny and worth the hype!

It’s hard to keep up in the world of software development, especially these days. There’s always some new framework, library, preprocessor, server, language. Knowing which is just noise to be ignored or which is groundbreaking is not a trivial task . Also “noise” is different for everyone depending on