Heroku Icon Heroku – Sponsored

Let's debug a Node.js application

logged by @logbot permalink

There are always challenges when it comes to debugging applications. Node.js’ asynchronous workflows add an extra layer of complexity to this arduous process. Although there have been some updates made to the V8 engine in order to easily access asynchronous stack traces, most of the time, we just get errors on the main thread of our applications, which makes debugging a little bit difficult. As well, when our Node.js applications crash, we usually need to rely on some complicated CLI tooling to analyze the core dumps.

This article takes a look at some easier ways to debug your Node.js applications.

Zach Holman zachholman.com

UTC is enough for everyone, right?

Programming around time is the bane of pretty much every programmer’s existence. UTC works most of the time, but still has its flaws.

Zach Holman writes on his blog:

Programming time, dates, timezones, recurring events, leap seconds… everything is pretty terrible. The common refrain in the industry is Just use UTC! Just use UTC! And that’s correct…sort of. But if you’re stuck building software that deals with time, there’s so much more to consider. It’s time…to talk about time.

Zach includes a lot of time-related puns and whole lot of wisdom about programming time.

OpenAI Icon OpenAI

OpenAI Fellows — Fall 2018 (now open)

As we gear up for the launch of Practical AI and more AI/ML/DS related news coverage, I wanted to bring to your attention to this 6-month apprenticeship (compensated) in AI research at OpenAI.

We’re now accepting applications for the next cohort of OpenAI Fellows, a program which offers a compensated 6-month apprenticeship in AI research at OpenAI. We designed this program for people who want to be an AI researcher, but do not have a formal background in the field. Applications for Fellows starting in September are open now and will close on July 8th at 12AM PST.

Apply here.

Eileen Uchitelle GitHub Blog

Upgrading GitHub from Rails 3.2 to 5.2

Eileen Uchitelle:

In total the project took a year and a half to upgrade from Rails 3.2 to Rails 5.2. Along the way we took time to clean up technical debt and improve the overall codebase while doing the upgrade. Below we’ll talk about how we upgraded Rails, lessons we learned and whether we’d do it again.

Congrats to Eileen and the team on this massive effort! Click through to read how they did it and the lessons the learned along the way.

DigitalOcean Icon DigitalOcean – Sponsored

How to build a minimal, production-ready infrastructure on DigitalOcean

logged by @logbot permalink

Cloud infrastructure can be complex, making figuring out which products and services – often from a list of unfamiliar terms – a daunting task. Join Developer Advocate Mason Egger as he walks you through how to build a minimal, production-ready architecture that pieces together many of DigitalOcean’s products.

Mason uses Terraform to build a production-ready infrastructure for your project or business in real time. Follow along or spin up your own. The code is hosted on GitHub.

Watch this talk to learn How to integrate DigitalOcean Droplet, DBaaS, LBaaS, VPC, Firewall, and DNS into a production-ready infrastructure. The importance of VPCs and how they benefit your infrastructure. How to use Terraform to stand up your infrastructure with a few commands.

TypeScript github.com

A secure TypeScript runtime on V8

If you need a JS runtime that supports TypeScript out of the box and has security as a top-most priority, star this repo and come back when it’s no longer “Segfaulty”.

Feature bullets! 👇

  • No package.json, no npm. Not backwards compatible with Node
  • Single executable
  • Defaults to read-only file system access
  • Always dies on uncaught errors
  • Supports top-level await

EDIT: it’s worth noting that this project is by Ryan Dahl, inventor of Node.js.

Justin Sisley github.com

mostly – a full stack web app starter kit built on Node.js

mostly’s purpose is to serve as a lightweight, easy-to-comprehend starting point, with a focus on providing a great developer experience while helping you get high quality and maintainable web applications deployed rapidly.

It uses Express for the server and React for the client. Worth a look if you’re starting up a new web project. I dig this point about it:

Nothing is hidden, nothing is magical, and all of the “plumbing” is accessible and simple.

Dimitri Fontaine tapoueh.org

Database modeling anti-patterns 🙅‍♀️

Dimitri Fontaine shares 3 classic data-modeling anti-patterns. The UUID section lacks strong argumentation, but the real gem in this article is his advice at the end. A snippet:

My advice is to always normalize your database model first, and then only fix the problems you have with that when you actually have them. Well except in those 3% of cases where really, really, it should be done in the design phase of the project. It’s quite hard to recognize those 3% though, and that ability is hard gained with experience.

Experience is the ultimate teacher.

0:00 / 0:00