Practices Icon

Practices

Development and business practices, methodologies, workflows, etc.
145 Stories
All Topics

Jon Skeet codeblog.jonskeet.uk

Storing UTC is not a silver bullet

This is a pretty long post from Jon Skeet on storing and converting UTC. For those interested in more of a tldr, the conclusion at the end of the post is “intended to be read in a standalone fashion.” When I read Stack Overflow questions involving time zones, there’s almost always someone giving the advice to only ever store UTC. Convert to UTC as soon as you can, and convert back to a target time zone as late as you can, for display purposes, and you’ll never have a time zone issue again, they say. This blog post is intended to provide a counterpoint to that advice. I’m certainly not saying storing UTC is always the wrong thing to do, but it’s not always the right thing to do either.

read more

Rod Johnson blog.atomist.com

In defense of YAML

Rod Johnson: I’m not against YAML, just against abuse of YAML. I want to help prevent people abusing YAML and being cruel to themselves and their coworkers in the process. YAML has bitten me once or twice over the years, but I am not repulsed by it as many folks seem to be. YAML’s strength is as a structured data format. Yes, it has issues. Whitespace is a minefield. Its syntax is surprisingly complex. It has gotchas: “Anyone who uses YAML long enough will eventually get burned when attempting to abbreviate Norway.” But YAML is human readable and supports comments: two key benefits that drive its popularity. If JSON supported comments it may have killed YAML by now. But alas… Rod makes a good defense of the format for certain uses.

read more

Amila Welihinda github.com

A checklist of things to consider before releasing your project

There’s lots of good advice here, covering: 🎨 Initial Presentation 💰 Value Proposition 💯 Project Quality 👑 Branding ✈️ Onboarding Methods 🧹 Code Conventions and Infrastructure 📣 Spread the Word 🤑 Funding If you read the Spread the Word section closely you’ll notice Amila is following his own advice. 😉

read more

Eevee eev.ee

On code elegance

A somewhat #longread on what “elegance” means when it comes to code: I get a gut feeling when something is elegant, and a different gut feeling altogether when something is hacky; I suspect most programmers experience the same. The strongest pattern I’ve found is this: Elegance is about expressing exactly what you mean — no more, no less. Conversely, I could define a hack as something that doesn’t remotely express what you mean, but happens to have a close-enough effect. Eevee goes on to disect some code examples. Thankfully, most of them are from video games. 😅

read more

Craig Kerstiens craigkerstiens.com

Give me back my monolith

It feels like we’re starting to pass the peak of the hype cycle of microservices. It’s no longer multiple times a week we now see a blog post of “How I migrated my monolith to 150 services”. Now I often hear a bit more of the counter: “I don’t hate my monolith, I just care that things stay performant” What follows is an excellent rundown of all the advantages that a monolith has over microservices. For a real-world case study, listen to the details of Segment’s transition back to a monorepo.

read more

Elixir github.com

Would you still pick Elixir in 2019?

The dwyl team went “all-in” on Elixir back in 2016 and are often asked if they would make the same choice again. Here’s the TLDR of their answer: The question of “Which Programming Language” is one we ask ourselves fairly regularly, and is the reason that lead us to discover and decide on using Elixir in 2016. We periodically survey the “up-and-coming” languages like Kotlin, Julia, Lua, etc. and keep concluding that our choice of Elixir is the one we would make again right now. Elixir is the “full package” from idea to deployment! Click through for their full reasoning, which includes why they switched from Node.js to Elixir in the first place, Elixir’s pros/cons they’ve learned along the way, and a list of other languages they would choose given different use cases.

read more

Max Böck mxb.dev

On simplicity

What are your thoughts on simplicity as a feature? Max Böck has this say… I think there’s a lot of value in actively questioning the need for complexity. Sometimes the smarter way to build things is to try and take some pieces away, rather than add more to it. For example… Static sites are on the rise again now, precisely because they are simple. They don’t try to manage server-side code with clever abstractions - they don’t have any. They don’t try to prevent security breaches with advanced firewalls - they get rid of the database entirely.

read more

Nick Janetakis nickjanetakis.com

80 characters per line is a standard worth sticking to even today

Nick Janetakis takes on the most common argument against 80 chars per line: It’s easy to think “wtf, I have a massive monitor, why should I limit myself to a standard that was created for punch cards in 1928 or terminals from the late 1970s?” If that’s what you’re thinking, definitely give this a read. He makes a strong case. One thing is for sure, you don’t want to end up like this guy… 😆

read more

Sam Soffes soffes.blog

Sam Soffes and his static Jekyll blog

Sam Soffes Jekyll’s a little differently. This iteration is built on top of Jekyll, a static site generator written in Ruby. Since I write my posts differently than Jekyll expects, I had to write several plugins to make things work correctly. You might wonder why I don’t just write my posts the way Jekyll wants instead of doing all of this work. I want to keep the details of my blogging engine separate from my content. I’d love to hear from you about your blogging stack in the discussion below. Like Sam, I’m also using Jekyll hosted on Netlify, but I’m new to his plugins.

read more

Max Stoiber mxstbr.com

Why I write CSS in JavaScript

You might be on the fence with CSS-in-JS — especially after hearing from Rich Harris about Svelte on The Changelog #332. Max Stoiber writing on his personal blog with his take on the matter: Primarily, CSS-in-JS boosts my confidence. I can add, change and delete CSS without any unexpected consequences. My changes to the styling of a component will not affect anything else. If I delete a component, I delete its CSS too. No more append-only stylesheets!

read more

Yegor Bugayenko yegor256.com

What if the architect is wrong?

Yegor Bugayenko: As you most probably know, I advocate for a dictatorship role of a software architect. All decisions are made by the architect must be final and non-disputable. However, the obvious question is: What happens if the architect is wrong? Does it mean the entire project is at risk of failure? And isn’t it better to make the whole team responsible for the result, instead of having one single point of failure? On the other hand, if the architect happens to be Will Ferrell…

read more

Medium Icon Medium

Kubernetes development workflow for macOS (tips and tricks)

Megan O’Keefe, developer relations engineer at Google, shares her setup for Kubernetes as well as some very helpful tips and tricks from her Terminal setup, navigating clusters, and how she gave kubectl superpowers. As a developer relations engineer for Kubernetes, I work a lot with demo code, samples, and sandbox clusters. This can get interesting to keep track of (read: total chaos). So in this post I’ll show some of the tools that make my Kubernetes life a lot better. This environment can work no matter what flavor of Kubernetes you’re running.

read more

Russ Cox research.swtch.com

Houston, we have a software dependency problem

Dig in as Russ Cox goes deep on our software dependency problem. For decades, discussion of software reuse was far more common than actual software reuse. Today, the situation is reversed: developers reuse software written by others every day, in the form of software dependencies, and the situation goes mostly unexamined. … Software dependencies carry with them serious risks that are too often overlooked. The shift to easy, fine-grained software reuse has happened so quickly that we do not yet understand the best practices for choosing and using dependencies effectively, or even for deciding when they are appropriate and when not. My purpose in writing this article is to raise awareness of the risks and encourage more investigation of solutions.

read more

Nikita Sobolev DEV.to

Best engineering practices: how to fix a bug?

This is a great article that covers the 🐛 gamut: spotting bugs reporting bugs reproducing bugs fixing bugs I love the “lifehack” snippets Nikita sprinkles in as well. Like this little gem right here: Lifehack: sometimes you might want to submit a broken code to your branch so it will trigger a CI build. After the build, it will be saved in your project. And your colleagues will be able to link to this problem. Your next commit will have to solve the issue.

read more

Founders Talk Founders Talk #60

Leading data-driven software teams and products

For the final show of 2018 I’m talking with Travis Kimmel, the CEO of GitPrime. Travis has spent years as an engineering manager. Travis’s mission at GitPrime is to bring crystal clear visibility into the software development process and bridge the communication gap between engineering and stakeholders. This communication gap is often an ongoing plague in product development lifecycle. We talked through focus, tech debt, leading teams, predictability, and more.

read more

Aaron Turner Medium

WebAssembly vs. ES6 — benchmark battle!

Aaron Turner (UXE at Google) says “WebAssembly is fast” and has conducted a real-world benchmark between WebAssembly and ES6 to showcase Wasm’s performance on different browsers, devices, and cores. …this benchmark will be utilizing the WasmBoy benchmarking tool (source code). The benchmark features three different cores as of today. AssemblyScript (WebAssembly built with the AssemblyScript compiler), JavaScript (ESNext output by the TypeScript compiler), and the previous JavaScript core except run through Google’s Closure Compiler…

read more

Charity Majors honeycomb.io

How much should my observability stack cost?

I love the way Charity Majors, CEO of Honeycomb.io, opens up this post… What should one pay for observability? How much observability is enough? How much is too much, or is there such a thing? Is it better to pay for one product that claims (dubiously) to do everything, or twenty products that are each optimized to do a different part of the problem super well? It’s almost enough to make a busy engineer say “Screw it, I’m spinning up Nagios”. (Hey, I said almost.)

read more

0:00 / 0:00