-
Patterns Principles and Tools for Testing Your React (Native) Apps
2018-05-18
Here’s a written version of my recent React Orlando talk: I want to talk about some patterns, principles, and tools for testing react native applications. I’m going to focus a lot on the “patterns and principles” part of the testing equation because, as we all know, the improper use of tools can actually be worse than not having those tools at all. Michael Scott’s misuse of the fork-lift in Daryl’s warehouse came to mind while I was pondering this truth, and it turns out there’s a gif of this exact moment in the show.…
-
The so-called 'RESTful' web in 2018 and beyond
2018-04-24
Recently, I’ve been wondering, Should new APIs created in 2018 be RESTful or be built using graphql or be something else entirely? While pondering and researching this question, I’ve stumbled upon some broader realizations like, Most web APIs and SPAs aren’t actually RESTful. 😨 In fact, I’ve never worked with a completely RESTful API. We’re reinventing the wheel and making our lives harder — on the server and on the client — by ignoring the standards around REST APIs 😞 The same force that explains our half-ass adoption of REST (i.…
-
From Panic Attacks to Yoga Mats: Startups, Leadership, and my first 1000 minutes Meditating
2018-03-09
About a year and a half ago, I was sitting in my Manhattan studio apartment trying to write an html lexer in python. I was about half way through my batch at the Recurse Center, and I was frustrated with my lack of progress towards my learning goals and intimidated by all of the absurdly smart people around me. While writing the lexer, I got hung up on an odd piece of python syntax.…
-
Ya Better Recognize
2017-11-24
Recently, I’ve picked up Psychologically Healthy Organizations from the APA to learn more about, among other things, the importance of recognition in the workplace. Here I want to share some highlights from the APA’s work on employee recognition in the workplace. Recognition Meaningfully Shapes Performance The authors of Peopleware make some strong claims about team composition and the extent to which people can change in the workplace: For most efforts, success or failure is in the cards from the moment the team is formed and the initial directions set out…managers are unlikely to change their people in any meaningful way.…
-
Hacker vs. Hustler: Reflecting on One Year at UniKey
2017-11-03
Me: I really like my new job. Family: (incredulously) Really? Me: Yeah. The people are smart, passionate, and the company seems promising. Family: (sarcastically) Ok. So you’ll stick around for 6 months then? Two Wednesdays ago marked my 1 year anniversary at UniKey, and as the above dialog suggests, this is pretty weird for me. I’ve never been at a job for a year before, so this 1st ever anniversary in my career has given me the urge to reflect a bit on a couple of questions:…
-
React Native at an IoT Startup
2017-10-22
If you saw a toilet seat in a movie theater, you’d probably think to yourself, “Wait a minute. You don’t use that in here. Many of us have a similar reaction when we think of using react native at an IoT startup: Wait a minute. React Native is fine for light-weight apps, but IoT companies need apps that make heavy use of the phone’s hardware, so don’t use it in this situation.…
-
How to Abuse Kotlin Extension Functions
2017-05-26
I’ve got a “sweet tooth,” which, in my case, is just a euphemism for me saying that I’m addicted to sugar. I’m young now, but I know that this addiction won’t end well once my metabolism slows down, so I try go to the gym. Unfortunately, when I leave the gym, I often think to myself, “I just worked out, so I can snag that Oreo McFlurry I’ve been craving all day.…
-
Not Needing Dagger is a Code Smell (Pt. 1)
2017-05-12
A code smell is a surface indication that usually corresponds to a deeper problem in the system…smells don’t always indicate a problem…You have to look deeper to see if there is an underlying problem there. –Martin Fowler Some people don’t think Dagger is very useful. I’m a bit suspicious of these people. An application that doesn’t need Dagger smells. It suggests that there might be something wrong with the application’s architecture.…
-
Setting up a Jenkins Pipeline for Android Testing
2017-04-28
Some tests are fast. You can run 1000s of them in seconds. These are the tests that are the heart and soul of TDD, so you run them every chance you get. There are other tests that aren’t so fast. Because they’re slow, you don’t want to run them often. You’ve got better things to do than to sit and wait for test results to come through. Unfortunately, the less you run your slow tests, the less valuable they are.…
-
Android Testing Calisthenics: Domain Objects
2017-04-14
Imagine that you’ve never run a single mile in your life. You know that exercising is good for your health, so you decide that you’re going to take up running. Strangely, however, you also decide that you’re going to begin your journey towards physical fitness by running a marathon tomorrow. That’s obviously a bad idea. Less obviously, deciding to go from no experience with testing to writing tests for an already existing Android app is also a bad idea.…