Adam Lynch's blog
I like to code, I like to write. Developer, author. Currently at Readwise.
Latest posts
Introducing Back Of Your Hand
I've left Teamwork to chase the startup dream
What to consider before adding Markdown to your app
Why empathy isn't a shortcut to great product design
Flexible data tables with CSS Grid
How I made the @randomOpenAPI Twitter bot in 42 minutes-ish
Lessons learned leading teams
10 pro tips: how to work with production databases
The goal here is get what you need done as quickly as possible and keep rolling. "Move fast and break things. Unless you are breaking stuff, you are not moving fast enough." - Mark Zuckerberg. 1. Connect to your production databases using the same tool you use for development. There's no need to...
How to improve your permissions UX
Static site regeneration and focusing on what's important
Beyond The Browser: From Web Apps To Desktop Apps
Serverless crash reporting for Electron apps
Developing an Electron Edge
Under the hood of a hybrid (app)
It has been about a year since we had A peek under the hood of Teamwork Chat. Since then, we’ve added a few nice features, fixed some bugs, and introduced a couple. You know how it goes. More...
Resurrecting Clippy
Remember Clippy? First shipped with Windows 97, Clippy was a “smart” assistant for Microsoft Office. A selfless shape-shifting paperclip who would appear out of nowhere to help you in any way it could. And how did you treat...
Transparency and NW.js
Yes, NW.js does support transparency, albeit it is disabled by default. One way to enable transparency is to use the transparency property to your application's manifest like this...
Platform detection in your NW.js app
NW.js: The App and Shortcut APIs
The NW.js GUI library provides an "App" API, which contains a variety of methods and properties, some of which are essential to pretty much any app, and some have more obscure use cases. You can access the API as follows...
Installing your NW.js app on Windows
NW.js is great for creating desktop applications using Web app technologies. If you're not familiar with NW.js, I'd advise you to read an introductory article like Creating Your First Desktop App With HTML, JS and Node-WebKit to get a good base first. This is a slightly more advanced article intended for anyone interested into distributing their NW.js app to Windows users.
npm and distribution path length problems
You might have been unfortunate enough to learn that Windows has a 256 character limit on file paths. You could've ran into this problem locally or on end users' machines. There's no real workaround but there are preventive measures you can take. Even if you haven't, feel free to take pleasure from reading my horror story.
10 things to know about Gulp
I love Gulp. It’s great in so many ways and for so many purposes. I’ve been putting off writing a post on it forever. There’s just too much to write about; I could write a book on it. So instead, I’m going to give a quick introduction and share a few tips.
Building Your App: Creating Executables for NW.js
How hard can it be to package up your NW.js app into real executables? To be a true desktop app, it should be a self-contained `.exe`, `.app`, or similar. There are a few ways to approach this. Let's start with the simplest approach with the least amount of code or configuration.
Olc: Ruin someone’s day with homoglyphs
You might have seen Ben Johnson’s tweet. I’m sorry everyone, I’ve made a module which makes this a lot easier to do. It’s called Olc. “Olc” is the Irish word for “bad” and is inconspicious enough to go…
Using Cygwin’s bash terminal in a JetBrains IDE
JetBrains IDEs are the best. IntelliJ, Android Studio, PHPStorm, PyCharm, and so on. I use IntelliJ Ultimate myself, which is kind of like all of their IDEs in one. One of the things I love about any JetBrains…
Dealing with long paths
You might have been unfortunate enough to learn that Windows has a 256-character limit on file paths. You could’ve run into this problem locally or on end users’ machines. We’ve created a simple little module called gulp-path-length to…
A peek under the hood of Teamwork Chat
The idea was to build a chat application of our own. A whole new standalone product to raise the bar for team communication and collaboration. From the beginning, Teamwork Chat was intended to tie our whole suite of…
CoffeeScript at Teamwork
The first project at Teamwork to use CoffeeScript was the Teamwork.com iPad app. Fast forward two years. We now have web, mobile and even desktop apps built with CoffeeScript. If you need a primer, there’s no better place…
Hassle-free third-party dependencies
How do you manage your third-party assets? With my simple setup, all I have to do is run one command and reload the page. Lets take a look at managing our third-party dependencies with Bower and preprocessing them…