Swizec - A geek with a hat
I write articles with real insight into the career and skills of a modern software engineer. "Raw and honest from the heart!" as one reader described them. Fueled by lessons learned over 20 years of building production code for side-projects, small businesses, and hyper growth startups. Both successful and not.
Subscribe below or keep reading 👇
Software Engineering Lessons from Production
Join Swizec's Newsletter and get insightful emails 💌 on mindsets, tactics, and technical skills for your career. Real lessons from building production software. No bullshit.
"Man, love your simple writing! Yours is the only newsletter I open and only blog that I give a fuck to read & scroll till the end. And wow always take away lessons with me. Inspiring! And very relatable. 👌"
How one sentence guides your career
Unlock the secret to guiding your career with a powerful positioning statement. Learn to stand out in the job market and attract opportunities that align with your expertise and values.
May 31st, 2023
What you can expect from the Senior Mindset Retreat
Unlock your true potential at the Senior Mindset Retreat! 🚀 Develop crucial soft skills for career growth and become the leader the tech world needs. It's not just about coding, it's about teamwork, ownership, and making an impact.
May 30th, 2023
Two types of complexity and their impact
Complicated code slows down junior devs, while complex systems impact senior devs more. Focus on managing system complexity & dependencies, not just simplifying code.
May 26th, 2023
How positioning makes you stand out from the crowd
Stand out in the job market with a strong positioning statement! Focus on the value you bring to organizations, not just tech skills. Be specific about what you do, for whom, and how.
May 23rd, 2023
Why a tech meltdown is the best time to invest in your career
Invest in your career growth. Seize the moment to develop new skills and prepare for a brighter future
May 23rd, 2023
How I turned 15 years of writing into a chatbot
What do you do with 15 years of your writing history when LLMs hit the scene? A chatbot!
May 20th, 2023
Your manager can be a peer
This collaborative approach enhances both people and technical aspects of a team, leading to a more efficient work environment.
May 17th, 2023
You can't fix the wrong abstraction
Unlock the secrets to combating architectural complexity in software development and learn to identify and fix the wrong abstraction. Boost productivity, reduce bugs, and retain more staff.
May 11th, 2023
Eight things to know about LLMs
eightthings.pdf is the best paper I've read on what's going on in AI right now and why everyone is excited. Here's my summary.
May 5th, 2023
Hug your manager
Behind every thriving team is a dedicated manager who shields them from corporate chaos, sacrificing their own well-being for the team's success.
May 3rd, 2023
A backend service nobody can grok
a little case study from an upcoming book I'm writing with Manning about software rewrites
April 28th, 2023
Own the outcome, not the work
Efficient problem-solving in engineering with a shift in perspective – focusing on user outcomes can lead to innovative solutions and change your approach to system design.
April 26th, 2023
Your background won't get you the job
Skills and experience matter more than prestigious schools and employers.
April 18th, 2023
Insights for interviews from Kahneman's Noise
everything people say is bad about modern tech interviews is actually good 🤯
April 14th, 2023
DRY vs SoC, a difficult choice
What is the essential difference between DRY and SoC principles in software engineering and how do you balance the two
April 11th, 2023
I went to "AI Woodstock" and wow
"AI Woodstock" was a HuggingFace meetup showcasing groundbreaking AI projects and innovations. Here are some of my favs.
April 4th, 2023
Software engineers, exercise, health, and productivity
Don't worry about the hype, just get some sun, some rest, and remember to hydrate.
March 31st, 2023
The programming tutorial SEO industry is dead
20 years ago greybeards laughed at us for Googling. Now they laugh when we ask ChatGPT. But the leverage is 🚀
March 28th, 2023
Coding is the easy part
Behind the scenes of a vendor migration project. What senior+ engineers do so you can focus on the code.
March 24th, 2023
Are you annoyed by the extra space after your name [name|]?
Behind the scenes of a tiny bug that survive 919 days
March 21st, 2023
Done means Shipped
Don't overthink, just ship
March 17th, 2023
Build semantic search in an afternoon? Yep 🤯
Learn how to build a powerful semantic search engine in just 2 hours with the OpenAI API.
March 15th, 2023
"If you're so good, why aren't you making 600k at BigTech?"
Swiz shares why he's not making the big bucks at a tech giant, from the soul-crushing grind of corporate to the funny money of tech compensation.
March 10th, 2023
Clever technical hackery can't solve the wrong design
A simple change in perspective can help you overcome complex technical challenges and save time on future projects.
March 7th, 2023
Own your career like an expert
You can achieve more with your career by leveraging your experience, advice, and ability to clear blockers, rather than just working hard. This approach of "force multiplying" your team can create more value than working alone
March 3rd, 2023
The backend iceberg
It takes an entire ecosystem to power the backend of a software system! Complex networks of processes, data storage, analytics, and more are often underestimated when looking at a software system from the frontend
February 14th, 2023
Building browser extensions with NextJS
NextJS can be used to build browser extensions. This is a novel way of building extensions that allows developers to use familiar tools and technologies. Here's how
February 8th, 2023
Why take a bigger role for no bump in pay
Luck is a function of the work you do and how many people know about it? Expand your visibility, take on impactful work, and increase your luck and career capital
February 3rd, 2023
My biggest React App performance boost was a backend change
Performance lives in the unlikliest of places. Follow the metrics.
January 31st, 2023
Squash merge? Really!?
Learn why squash merging is your friend - from hating it to loving it! Squash merging helps you keep moving and focus on the work instead of recording the work.
January 27th, 2023
Why trunk-based development is best
Merging finished work straight to main and deploying to production right away, scales to teams of thousands. This approach is counterintuitive to many engineers who may be used to working on their own
January 24th, 2023
Start coding at the point of least certainty
Start coding at the point of least certainty: Learn how to approach projects when there is uncertainty and risk, and why it's beneficial to start with the hardest part first, instead of building a foundation and working up from there. This concept is illustrated through the analogy of training a monkey to jump through a hoop.
January 20th, 2023
Reader question: How to grow 10+ years into your career?
For those wanting to stay hands-on, we recommend solving bigger better challenges with higher stakes and new problems.
January 16th, 2023
Async React with NextJS 13
We look at React's native async support and how to use it in a NextJS 13 app. Learn how to use async components, parallel loading states, and caching with React.js and NextJS 13.
January 14th, 2023
In case of layoffs
Advice on how to prepare for potential layoffs, how to support friends and colleagues who have been laid off, and how to find a new job after being laid off.
January 10th, 2023
Building apps with OpenAI and ChatGPT
Generative AI has made big strides in recent years. Diffusion models make decent art and modern large language models can out-write even the best college student on a deadline. Over the holidays I tried it out by building an app.
January 6th, 2023
2022 year in review
The days are long, but the weeks are short. In the wash of our daily grind, you lose sight of what a year can bring. Or a decade! I like to take a moment around the new year to reflect and make plans
January 3rd, 2023
Skin in the game
My engineering manager likes to say that he can give advice and warn us before a big mistake, but he can't tell us what to do. He doesn't live with the consequences.
December 9th, 2022
Getting off twitter, an experiment
ole Musky bought Twitter and the tech community threw a collective shitfit. The atmosphere of ragequitting, hand wringing, and aloof defiance gave me time to reflect: Why am *I* here?
December 3rd, 2022
Scaling teams is a technical challenge
A founder friend asked me about growing pains on his team. How do you avoid stepping on each other's toes?
November 29th, 2022
Can you stay a senior engineer forever?
Here's an idea that can take the pressure off your career: Yes, you can stay a senior software engineer forever. But how?
November 24th, 2022
Stable Diffusion on an iPad 🤯
When's the last time a piece of tech blew your mind? I tried stable diffusion on my new ipad and wow
November 22nd, 2022
What I learned from Staff Engineer by Will Larson
Staff Engineer was one of the more impactful books I've read in recent months. Went through the audiobook soon after becoming tech lead so the timing was perfect.
November 17th, 2022
Reader question: useReducer or XState?
Following up from my article about XState and Stately.ai, fellow reader S. asked if `useReducer` could ever be relevant when using state machines in React code. Yes! Here's how
November 11th, 2022
When your brain is breaking, try Stately.ai
Two years ago I wrote about using XState after building a UI interaction so twisted my brain leaked out my ears. It helped. Now the creators have made something even better – Stately.ai 😍
November 8th, 2022
On becoming tech lead
A few weeks ago I made tech lead, a type of staff engineer. Here are my thoughts on what that means, how it happened, and why you'd want such a thing.
November 5th, 2022
Shipped code wins
November 2nd, 2022
Why PATCH endpoints matter
A painful lesson from production that brought several engineers almost to tears: *Please* add PATCH endpoints to your public APIs.
October 28th, 2022
Over-engineering tweet embeds with web components for fun and privacy
A way to embed tweets in static sites with full pre-renders and live updates using just 9kB of client-side JavaScript, 2 HTTP requests, and full reader privacy ✌️
October 26th, 2022
Reader question: Work at a big international or a local studio?
Fellow reader Frank writes in with a question about career moves and I thought my answer could help you too
October 20th, 2022
Grow your career ... in this economy??
if you've been following tech news lately, things feel ... 😖 Between the layoffs, hiring freezes, investors suddenly caring about revenue, and whatever the heck stock markets are doing, we're in for a rough time. BUT!
October 12th, 2022
How better data modeling fixes your code
When your code feels hard, 9 times out of 10, the problem is with your data model. The signs are subtle.
September 27th, 2022
Reader question: Should you learn the latest hotness?
Great question. Common concern. *What if I get stuck in a technology that isn't hot??* Or worse, burn out re-learning every new thing 😱
September 22nd, 2022
Notes on A Relational Model of Data for Large Shared Data Banks
In 1970 a paper came out that changed the world of business computing. It laid the ground work for modern databases.
September 20th, 2022
useCallback is a code smell
One of my favorite ways to simplify and de-gotcha React code is to rip out all the useCallback and useMemo drama. 90% of the time you don't need it.
September 16th, 2022
The art of the cowboy merge 🤠
how do you catch a critical deadline that cannot be missed? We're talking external stakeholders, millions on the line, and it all hinges on *your* team getting it done on time. No overtime
September 8th, 2022
If it works together, it lives together
Wherein I use LEGO to talk about organizing your code for ease of use
September 5th, 2022
Why others' code is hard to navigate
Some people like to organize code in files and folders and neat categories. Others love search. When they work together, that's the challenge.
September 1st, 2022
Reader Question: What do collaborative teams look like?
New members on our team invariably say 2 things:
1. Wow I've never seen a team move this fast 2. This approach feels weird. I'm uncomfortable
Teams like this are not common.
August 27th, 2022
What makes a real image?
What does a real image look like? The rise of modern AI photo editing and generation tools makes this an interesting question.
August 23rd, 2022
Your code doesn't matter
"Your code doesn't matter" is something experienced programmers say, between the lines, when they sound like complete lunatics. But what do they mean? Why does everyone say it?
August 16th, 2022
What coding tutorials and teachers get wrong
Chatting about teaching and learning complex technical skills with an engineer I'm mentoring. She's a former chef. We shared the same frustration with online resources.
August 12th, 2022
I stopped using Google Analytics after 15 years
swizec.com has been around since 2005. For 15 of those years, it's been running Google Analytics to give me a sense of "Is anyone out there?". No more.
August 10th, 2022
Reader question: So about that perfect burndown chart ...
If your approach works so well, why isn't every team doing this?
August 6th, 2022
Move your business logic into data
The quickest way to simplify a complex function with lots of logic is to turn it into data. A lesson from production
August 3rd, 2022
Nobody is coming to save you
How do you react when you don't like The Process at work? Most programmers complain on social media, make a wry joke, and ... suffer. Not great
July 29th, 2022
You do have time to build it twice
My talk from React Summit is now online, if you're curious. It's about code rewrites in the context of hyper growth startups. The ultimate sin. Or is it 🤔
July 26th, 2022
Reader question: Feeling guilt as a tech lead
Keep getting the guilt, that I'm not able to code, just running around for discussions and solving other issues, managing people. Any idea to manage all the fronts and get rid of this guilt?
July 23rd, 2022
You don't *have to* build it sloppy to go fast
My favorite mistake to make when I'm in a hurry is to think that I _have to_ build new features the sloppiest way possible. Find the quick fix and move on. But that's not true.
July 19th, 2022
A work ritual that keeps me sane
A coworker asked me for tips on how to stay focused during the day. Here's what I said.
July 15th, 2022
What makes a great software engineer?
In 2015 a group of researchers asked 59 experienced engineers at Microsoft "What makes a great software engineer?". Here's what they found.
July 11th, 2022
Write abstractions, not just code
Wherein I use a silly example to show why you need more than small reusable single purpose functions to write good software.
July 8th, 2022
Always have 3 answers
How do you stand out as an expert amid tech layoffs?
July 1st, 2022
The audience loved my talk but I didn't
A critical look at a conference talk that went great but felt a little off.
June 24th, 2022
Coding forces you to understand the problem
Programming translates fuzzy understanding into exacting specifications. That’s why it’s hard. The Illusion of Explanatory Depth reigns supreme
June 22nd, 2022
A lesson on expertise from a great mafia movie
You cannot make something good until you understand who you're making it for.
June 16th, 2022
You are allowed to invent HTTP status codes
A fun problem for RESTful APIs: Did you get 404 because your URL is wrong or because the resource wasn't found?
June 7th, 2022
There are no bad teams
it’s the leader, not the team
June 3rd, 2022
Writing software is like kicking a can
Writing software is a playful process of exploration and discovery. Like a game of kick the can on a Sunday walk.
May 25th, 2022
The Italian foods theory of bad software design 🍝
Spaghetti code – unstructured Ravioli code – too structured Lasagna code – layered wrong Minestrone software – unclear domains
May 23rd, 2022
What microservices are for
Microservices are a pain in the ass. They turn every system into a byzantine mess of complexity. But this week ... they saved my butt.
May 13th, 2022
Learnings about the future of the web from Reactathon
The first in-person conference in years! It was wonderful 🤩 - Remix is great - Serverless at edge is the future - GDPR does not play with 👆
May 7th, 2022
Bad excuses to want a rewrite
Here's a sneak peek at a new book I'm writing about Refactoring and Rewriting. It's with a publisher so I might get in trouble for sharing this, but it's a first draft ... they own the final version 😛
April 28th, 2022
The role of a senior+ engineer
"Every product org should have a senior+ engineer whose job it is to run around and make everyone else more productive" 🤔 That IS the role of a senior+ engineer
April 26th, 2022
Quick tip about JavaScript's optional chaining operator
People on twitter loved this trick I learned from a coworker's pull request the other day. You might like it too.
April 22nd, 2022
Code Review Practices for Refactoring Changes
Do you review refactoring pull requests differently than you do others? An empirical study of OpenStack, an open source cloud platform, says that you do and finds 6 common criteria.
April 20th, 2022
How we made the best burndown chart you've ever seen
My entire career I've never seen a sprint finished on time. The new manager said "Oh I think we can fix that" ... 18 months later he proved me wrong
April 12th, 2022
When to join and leave a company, project, or trend
Timing changes everything. Who do you think has better engineers? The team that built Google from 9 million daily searches in 2000 to 1 billion in 2009, or the team that launched Google's 10th chat app last year?
April 7th, 2022
Promise.allSettled, a wonderful tool for resilient code
The pros and cons of different approaches to writing resilient code that handles partial failures
April 4th, 2022
Adding categories to a Gatsby blog (for better SEO)
One of my biggest frustrations since migrating swizec.com from Wordpress to Gatsby was that I never added categories. Always wanted to, never did. Thought it would be super hard. Gatsby made it painless
March 29th, 2022
Saving time in UTC doesn't work and offsets aren't enough
Lessons from a painful outage with timezones, UTC offsets, and database clients that took a whole week to resolve.
March 25th, 2022
A quick lesson in writing resilient code
On the backend anything can and will fail. How do you deal with that?
March 21st, 2022
Are you the engineer who scoffs at high salary numbers?
Engineering compensation falls into groups so different that neither group even realizes the others exist. And they fight about it.
March 7th, 2022
Why experts charge more
Ever noticed how an expert's job isn't that different from an apprentice's? Yet they can charge way more 🤔
March 7th, 2022
How to give and receive feedback
Feedback can save an airplane from crashing, or upset everyone around you. But for you personally, honest feedback is the fastest way to become a better engineer. Fixing what you're bad at is where the gains hide.
March 4th, 2022
A new VSCode extension makes state machines shine on a team
When you grok state machines, a new world of computational beauty and software design opens in front of your eyes. Things that used to be hard become easy. The impossible becomes possible. And you turn into that annoying team member.
February 25th, 2022
Be their shit umbrella
because if you go to bat for the team, the team goes to bat for you
February 16th, 2022
Immutability isn't free
Or how we took an API endpoint from 16s to 3s.
February 4th, 2022
Why mentoring matters
Here's a funny video about Ivane, a construction worker with amazing productivity and work ethic. Imagine what Ivane could do if someone showed him how to use his tools 😱
February 3rd, 2022
How I used indie hacking to sponsor my own greencard
The longest project of my life
February 1st, 2022
Quick tip for system design interviews
What are system design interviews for anyway?
January 28th, 2022
How to add Typeform as a Gatsby source
Every year I ask readers if they're enjoying my newsletter. Then fail to use those responses 😅 This year I said heck it and built a /testimonials page that shows everyone's feedback raw from Typeform. Here's how.
January 25th, 2022
Why other people's code looks weird
Are you an organizer or a searcher? What about your team?
January 22nd, 2022
What is the goal of engineering?
How can you know you're succeeding if you don't know where you're going?
January 20th, 2022
Wow API Gateway v2 is fast
A story of how my performance hunch was totally wrong and the answer that sped up an AWS Lambda 33%
January 17th, 2022
Try to work for a brand
Brand helps your career in subtle ways.
January 14th, 2022
The quickest way to fail a tech interview
No it's not a wrong answer or floundering with algorithms. Not even being nervous or shy or having a language barrier. Culture fit is the least of your worries if you make this mistake.
January 11th, 2022
What to do when bugs are whack-a-mole
What do you do when every bug you fix creates 5 new bugs? You could laugh and move on, or realize it's a sign of bigger issues
January 6th, 2022
Using DynamoDB Streams with the Serverless Framework
DynamoDB Streams are a convenient way to react to changes in your database. And surprisingly easy to use 🥳
January 4th, 2022
How I stopped chasing mice in 2021
How a focus on long-term games changed my approach to everything and calmed down my life
December 31st, 2021
The Passion Paradox
burnout doesn't work the way you think
December 24th, 2021
pg-mem and jest for smooth integration testing
The cult of TDD leads you down a dark and stormy path towards brittle code with a false sense of security. But there is a better way. A sweet spot between unit and heavy integration.
December 21st, 2021
A mental framework that helps you code faster
What slows you down the most when you're coding or doing software engineering? I think it's how fast you make decisions
December 16th, 2021
Datalist, the pure HTML typeahead you didn't know about
If you ever want to build a searchable typeahead field, `<datalist>` can do that for you. On all browsers. Across devices. Standards compliant. With no JavaScript. 🤯
December 14th, 2021
When it’s okay to work overtime
Not all overtime is bad overtime
December 11th, 2021
Why null checks are bad
Every null or undefined check doubles the number of tests you need 😱
December 10th, 2021
Small choices can wreck your codebase
wanna see the strangest looping construct I've found in production code?
December 3rd, 2021
Better tooling won't fix your API
RESTful APIs are like Agile – everyone does it differently and if it isn't working, it's your fault for doing it wrong. 🤨
November 30th, 2021
What to expect in senior level interviews
Interviews are terrible. Stressful, time-intensive, loosely correlated with on the job performance. They're the least terrible way we have to hire.
November 25th, 2021
Getting from junior to senior
The difference in salary between a junior and senior engineer can be orders of magnitude. Many multiples at least. But what's the difference in mindset that gets you there?
November 19th, 2021
How defensive coding leads to bloat
Defensive coding is an important lesson and over time and engineers it leads to massive bloat, if you're not careful.
November 15th, 2021
Your job as an engineer is to make yourself unnecessary
November 9th, 2021
You can use React Query for slow computation, not just API
You can use the ergonomics of React Query for any slow operation and it's wonderful.
November 8th, 2021
Balancing serious sidehustles and full-time work
Erik, the author of Developer Hegemony and founder of Hit Subscribe, invited me to chat about balancing sidehustles and full-time work
November 5th, 2021
Finding unresolved promises in JavaScript
JavaScript is a fantastic server-side language because it's async. That also makes it tricky. 💩 What happens when you swallow errors? Forget to resolve promises? Or run into a number of other anti-patterns
November 3rd, 2021
Why I'm excited about React 18 – talk
React 18 is coming soon. I hope 🤞 Here's a talk I gave exploring its implications and showing off demos with working code.
November 1st, 2021
How to take ownership and make progress without explicit direction
October 28th, 2021
25 lessons from 25 years of coding
Today is my birthday which means I've been coding for 25 years. A quarter century 😱 Here's 25 lessons I've learned about code. In no particular order.
October 25th, 2021
How to configure Jest with TypeScript
Using plain Jest on a TypeScript codebase is kinda rough. No types in tests no thanks. Making Jest and TypeScript work together smoothly is something you do just rarely enough to forget the details. Hope this helps you and future me too ✌️
October 19th, 2021
What's more productive, a team or a talented soloist?
Engineers *hate it* when you say it doesn't matter how good they are because a team will outcode them any day. But it's true, you can't build something big on your own.
October 15th, 2021
Learn TypeScript in 5 minutes
TypeScript solves many of JavaScript's sharpest edges. You don't need much to get started ✌️
October 12th, 2021
Meetings – a senior engineer's secret weapon
Boo meetings, yay code, right? There comes a time in your career when coding is no longer your highest impact contribution. Might even be holding you back. 🙊
October 1st, 2021
There's two types of engineers
Do you solve problems or execute tasks?
September 27th, 2021
Stop SHOUTING = 'shouting'
A hill I will die on 👉 global CONSTANT = 'constant' are bad
September 21st, 2021
How to rewrite your app while growing to a $100,000,000 series B
When you're in a company desperately trying to meet demand, *ship*. You'll have money, time, and professionals to fix code later. Even if you start with jQuery.
September 18th, 2021
Being a senior/junior engineer in 2021 – podcast
Last week I went on the PodRocket podcast to talk about engineering careers, serverless handbook, and the current job market.
September 13th, 2021
A great engineer knows their tools
Earlier in my career when I thought I was god's gift to engineering but wasn't, I failed one of those stupid interview questions that "have nothing to do with the work". It was a great question.
September 9th, 2021
Anything's a sorting problem if you squint hard enough
What's the most algorithmically fun code you've written recently? 🤔 Here's mine: A dataviz using a grid of triangles that fits into the client's logo.
September 7th, 2021
How to ask for help
what makes a senior engineer stand out in an interview?
No it's not the amount of side projects or their leetcoding speed. It's knowing how and when to ask for help.
August 27th, 2021
Build simple backends with Gatsby Serverless Functions
Until recently adding a little backend to your Gatsby site meant 2 options:
1. Climbing the AWS learning curve 2. Rewrite with NextJS
Now there's an /api directory 😱
August 24th, 2021
WorkInProgress kills your progress
If it takes 6 engineers 10 days to complete 6 projects in parallel, why does it take 8 days when you work together 🤨
August 21st, 2021
Reader question: "When do you fix tech debt?"
Long time reader Phil asks when do you fix the tech debt you used to ship faster. Heroic efforts don't work. The real answer is "always" – a mindset of gardening.
August 17th, 2021
Tech debt is a tool
If your house was on fire, would you mow the lawn first?
August 13th, 2021
Complex vs. complicated
Would you rather work with a complex system or a complicated system? 🤔
August 3rd, 2021
Pay yourself first
Profit is not what's left after expenses, expenses are what's left after profit.
July 30th, 2021
You don't need a big team to automate your work
The opposite of folks who follow every FAANG trend and over-engineer their companies to death, are the folks who *never* take advice from the big boys.
July 27th, 2021
Tips for a fulfilling tech career
When I dropped out of college to focus on freelancing back in 2012, I set 3 ground rules:
July 23rd, 2021
React 18 and the future of async data
Friend, I have glimpsed the future and it is amazing. React 18 is shipping with <Suspense> and startTransition for deferred component rendering, but not data loading. That's coming in a future 18.x version.
July 22nd, 2021
What I learned from Software Engineering at Google
When I first picked up Software Engineering at Google I thought it was another one of those FAANG books full of lessons that make no sense at human scale. I was surprised, lessons apply to teams as small as 5.
July 16th, 2021
Your career needs a vision
In his book, The Art of Science and Engineering, Richard Hamming says the key to a great career is vision. What does that really look like?
July 14th, 2021
Preventing RSI for programmers
I've been computering daily for 24 years, since I was 9, and managing RSI since high school. People often ask how it never gets bad. This is the article I always wish I had written.
July 9th, 2021
Why a coding AI like Github Copilot won't take your job
It might. What's your job? If you're in the *"write code to exact specifications"* business ... now's a good time to start leveling up. The AI's not ready yet.
July 7th, 2021
How to own projects like a senior engineer
The best skill you can learn is ownership. The second best is to let go.
July 2nd, 2021
Hacking the React AST for fun and profit – #CodeWithSwiz ep34
This is hold my beer level of hackery. It didn't work but we learned lots in the process.
June 29th, 2021
A surprising feature of JavaScript optional chaining
This blew my mind, thought you'd like it too. You can do more with ?. than you thought.
June 24th, 2021
Use Netlify's _redirects on Gatsby Cloud
Something always goes wrong when you change hosting providers. 😅 For me it was redirects. A vital feature of any site migration.
June 23rd, 2021
Do important work
Next time you finish a project, ask yourself: *"Might this work be important?"*. Add the polish.
June 19th, 2021
A better React 18 startTransition demo
Demoing startTransition is hard. Modern computers are too fast 😅 – Dan Abramov, a React core team member, helped me fix it up. Here's what I learned
June 16th, 2021
Trying out React 18 Alpha
I read everything about React 18 Alpha, trawled through the work group, and ran some experiments. Here's what you'll wanna know.
June 11th, 2021
Words that scare developers
Words that scare developers are powerful tools that are not meant to be safe. That is a valuable lesson.
June 7th, 2021
A fun security bug with static rendering – CodeWithSwiz #31
The flash of unlocked content is great fun for any paywall
June 1st, 2021
Software Engineering is the 2nd best job
Ok so I've been doing lots of research into the Software Engineer job market – Some highlights 👇
May 18th, 2021
Why you need a positioning statement
High value experts use positioning statements to say what they do for whom. Most engineers don't have one. 🤨
May 14th, 2021
Build privacy-focused blazing fast tweet embeds – CodeWithSwiz 30
Twitter embeds every tweet on your page as an iframe. Loads 1.2MB of JavaScript, makes 20+ HTTP requests and uses 100+ DOM nodes. 💩
May 12th, 2021
What matters in a senior engineer job interview
Degree matters if you have nothing better to show, consulting and BigTech backgrounds are negative, too many seniors can't code.
May 7th, 2021
Twitter embeds without JavaScript, pt1 – #CodeWithSwiz 29
Continuing our quest for better Lighthouse scores, more reader privacy, and less JavaScript we attacked the next biggest culprit 👉 Twitter.
May 4th, 2021
the trashcan metaphor
April 30th, 2021
2 quick tips for 250% better Lighthouse scores – CodeWithSwiz 28
Your site may be fast for users, but Google don't care. Official metrics or bust.
April 27th, 2021
Flow good for programming, not engineering
Friend, how good are you at your best? ... Nobody cares. How good are you at your average? What about your worst?
April 24th, 2021
Serverless file upload to S3 with NextJS and AWS Lambda – CodeWithSwiz 27
The Girl loves her daily cute photos, but she's bored of repeats. What if adding images was easier 🤔
April 20th, 2021
Send daily random photos from an S3 bucket using AWS Lambda – CodeWithSwiz 25
An experiment that sends daily photos from an S3 bucket to an IoT device using AWS Lambda
April 6th, 2021
Your serverless questions, answered
When talk comes to serverless, engineers have lots of questions. Here are some answers 😊
March 29th, 2021
Your luck & opportunity surface area
Here's a comment that resonated yesterday and you might like. It's about how to maximize the opportunity in your work.
March 26th, 2021
How do you know if serverless fits your project?
The hallmark of a true expert is understanding about the pros and cons of your technical decisions.
March 25th, 2021
Serverless Handbook coming Mar 31st
Serverless is the future. New book coming out Mar 31st and it's looking bomb
March 23rd, 2021
Different medium, different mindset
Ever wondered what it's like to make a physical book? It ain't as easy as shipping code lemme tell ya 😅
March 19th, 2021
Go full-stack in 5min with your first cloud function
How *do* you build a JavaScript function that runs in the cloud serverlessly? Here's how to get started with Vercel, Netlify, or AWS Lambda
March 18th, 2021
Can you automate love?
What's the laziest thing you've ever built? For me it's a bot that sends cute pictures every day
March 17th, 2021
If you can JavaScript, you can backend
When you think of a backend or server developer, who comes to mind? A wizard of arcane magics. The future belongs to full-stack frontend engineers.
March 16th, 2021
That time serverless melted my credit card
Serverless is pretty cheap. But you *can* get it wrong.
March 12th, 2021
Why serverless fits side-projects perfectly
How do you provision servers for no load most days THEN ALL THE LOAD THIS MINUTE? That's how side-projects work and it's hard
March 10th, 2021
How a $12 AWS bill powers a $50k business
my point is that running server code on the web has become ridiculously cheap *and* easy
March 9th, 2021
Variants – a quick tip for better React components
Reusable components like to grow boolean props for different situations and complexity soon blows up. Variant props are the perfect solution.
March 2nd, 2021
Can you code faster?
What slows you down most while coding? It's not lack of skill. It's not lack of ideas. It's uncertainty. Fear.
February 26th, 2021
Reverse engineer a GraphQL API to automate love notes – CodeWithSwiz 24
We used a man-in-the-middle attack to snoop an app's API traffic, replayed it in a GraphQL client, and successfully put it inside an AWS Lambda 🤘
February 23rd, 2021
A TypeScript trick for reusable hooks
Reusable hooks are all fun and games until TypeScript starts yelling at you about incompatible types.
February 19th, 2021
React Bricks - visual blocks editor for NextJS #CodeWithSwiz 22
Tried a new visual editor for NextJS and CreateReactApp. Got a site up in 20min 🤘
February 9th, 2021
The Magic Function principle
Write functions, mostly magic.
February 5th, 2021
"silicon valley is like hollywood"
and I don't mean Silicon Valley the place, I mean Silicon Valley the concept.
January 29th, 2021
[CodeWithSwiz 21] useAuth beta support for Firebase 🎉
It works! useAuth has beta-level support for Firebase Auth 🥳 I did not expect that to take 3 sessions.
January 26th, 2021
Tech interview best practice that fails in life
Tech interviews have a magic answer: The hashmap. And it's not always best on the job.
January 22nd, 2021
[CodeWithSwiz 20] Adding Firebase support to useAuth, pt2
Firebase continues to be 💩. No wonder people keep asking for support in useAuth. Almost there ✌️
January 19th, 2021
What computer science can teach us about vaccine distribution
How would you rollout the covid vaccine for max fairness and speed?
January 15th, 2021
[CodeWithSwiz 19] Firebase Auth support in useAuth, pt1
Support for Firebase Auth is one of the most requested features for useAuth and I figured what the heck, how hard can it be?
January 12th, 2021
Why you can't find an engineering coach
Wanna learn boxing? Join a gym, find a coach. Tennis player with a kink in your game? Find a coach. Software engineer with a missing skill? Google, random blogs, fun newsletters, dubious podcasts, noise on twitter 🤨
January 8th, 2021
Reflecting on 2020
The year that felt like a drag and ended in the blink of an eye.
January 2nd, 2021
Deep work December
do you ever feel like you're working working working and nothing is happening? Like a game character running against an invisible obstacle? That's how I've been feeling lately. Stuck.
December 2nd, 2020
How *do* you standout as a developer?
Course creators are always telling you to learn this or that but how does any of it help *your* goals? That's the missing piece 🤔
November 26th, 2020
SSR, SSRwR, SSG, CSR, WTFBBQ???
These abbreviations are getting out of hand. It's like a bad interviewer's wet dream.
November 24th, 2020
You're not asking for a job, you're selling a service
You're not asking for a job, you're selling a service. The true question behind every interview is "How can you help us?"
November 20th, 2020
Gatsby to NextJS pt1, server-side-render or server-side-generate?
Gatsby and NextJS do similar things differently. One is better for websites, the other for webapps. In episode 17 of CodeWithSwiz we explore the biggest difference.
November 19th, 2020
Use private libraries to cleanup your codebase
You're using the many-small-repositories approach to work faster as a team. But where do you put shared code? How do you make it nice to use? How to publish and install private packages?
November 16th, 2020
React context without context, using XState – CodeWithSwiz 14, 15
useAuth works without React Context! 🎉 here's how
November 10th, 2020
What's your code for?
Perfect code that doesn't solve the problem is useless. Perfect metrics that don't serve the user are a distraction.
November 6th, 2020
Reader question: How do you learn programming topics?
Nader writes in worried that he started coding too late and his progress is too slow. Here's my response.
November 1st, 2020
Build better apps faster with the JAMStack
October 30th, 2020
The ultimate test for your webapp: Airplane wifi
Forget time to first byte and time to interactive. What's your time to useful?
October 29th, 2020
Learn Gatsby and NextJS with my new workshop
Think of the last time you started a new project. You spend the first few hours getting started. Ugh
October 28th, 2020
How JAMStack helps you ship
Common problem in engineering teams: Stepping on each other's toes. JAMStack can help.
October 27th, 2020
The mistake that strangles engineering teams
You work hard on a feature. Weeks of back and forth with designers, product managers, tech leads, and the rest of your team. Your feature is amazing and you're proud as heck! But then ...
October 26th, 2020
How I use delegation to get more done
Productivity porn shows you how to pack more into your day. Productivity porn is wrong my friend. You need to remove things to grow.
October 23rd, 2020
Swap useReducer with XState – CodeWithSwiz 13
In Refactoring a useReducer to XState we talked about a 5 step process to turn a reducer into an XState state machine. Today answers "Ok now what?"
October 22nd, 2020
Sucking is the first step
You ever feel like you have no idea what you're doing? Everyone feels that way. Sometimes more, sometimes less.
October 19th, 2020
How to write tests for XState – CodeWithSwiz 12
Once you know how to refactor a useReducer to XState, you gotta prove you did it right.
October 13th, 2020
Should you take a pay cut for equity
Would you take some % of your salary in bitcoin? The joke is that compared to pre-IPO equity, bitcoin is predictable and has a known value.
October 9th, 2020
Refactoring a useReducer to XState, pt1 – CodeWithSwiz 11
XState promises to be like useReducer+Context combined and the simplest way to handle complex state in React apps. But can it deliver? On this episode of #CodeWithSwiz, we gave it a shot.
October 8th, 2020
Computer science is not software engineering
Wow, college was such a waste of time ... when did you ever invert a binary tree outside of an interview? Honestly I never inverted a binary tree in college either ☹️
October 2nd, 2020
Prefetch data with React Query and NextJS – CodeWithSwiz 8, 9
Prefetching lets you start React apps without loading spinners. Gatsby introduced this concept with `staticQuery`, react-query and NextJS make the pattern easier 😍
September 30th, 2020
Why you should learn serverless cloud functions
Times are changing, the future of web development is here.Story time! 20 years of history in a 2min read, it's gonna be great 🤘
September 25th, 2020
My favorite serverless project
When's the last time your first project in a new technology was also your favorite? Doesn't happen very often ...🤔 It happened to me in November 2018.
September 24th, 2020
Modern backend is a JavaScript function
Many engineers think server-side code is the scary domain of True Engineers. Something newbies, juniors, and frontend engineers shouldn't touch. They're wrong. Modern backend is a joy. ❤️
September 22nd, 2020
A JavaScript function that makes $40,000+/year
What's the best code you ever wrote? Is it the most clever, or the cleanest. The most fun problem to solve, or the most impactful. The surprise throwaway everyone uses, or the love nobody noticed.
September 21st, 2020
Using JavaScript to commit to Github – CodeWithSwiz 7
Update code with a JavaScript function? Easier than you think 😍
September 17th, 2020
Why NextJS /api routes are fab – CodeWithSwiz 6
In this episode of CodeWithSwiz, we tried NextJS's support for /api routes – code running on the backend. In a word – Wow
September 13th, 2020
Why senior engineers get nothing done
You start a new job and it's amazing. Code all day, clear objectives, easy guidelines, ship a bunch of features be a hero. Then something happens and suddenly you get nothing done. 🤔
September 11th, 2020
Exploring NextJS with a headless CMS, pt4 – CodeWithSwiz
NextJS getStaticProps, environment vars, and why you shouldn't use yarn link – all in this episode of #CodeWithSwiz
September 10th, 2020
Exploring NextJS with a custom CMS, pt3 – CodeWithSwiz
Friend, this episode of #CodeWithSwiz was a great example of why you want to start using TypeScript and how thermal load *destroys* computers.
September 8th, 2020
How React Query gives you almost everything you thought you needed GraphQL for
GraphQL solves every problem you've ever had talking to APIs on the frontend. Mention a switch to GraphQL to your team and they think it's a joke. Rewrite our entire app? oh you jokester. React Query is the perfect middle ground ❤️
September 7th, 2020
What if tech interviews aren't bullshit
Every tech employee says interviews are broken. Every employer keeps interviewing. What gives?
September 4th, 2020
Building a small CMS with NextJS, pt2 – CodeWithSwiz
You're the computer, the CMS is your script. Starting small, trying NextJS, comparing microbundle vs. parcel for extracting libraries out of projects.
September 3rd, 2020
Your first NextJS app – CodeWithSwiz
On CodeWithSwiz ep2, we tried NextJS and built our first tiny app. Complete with a design system, static rendering, React Query to talk to AWS Lambda, and deployed to live 🤘
September 1st, 2020
How to export a large Wordpress site to Markdown
Migrating from Wordpress to Markdown sounds easy. Mention it to any developer and they'll say "Pfft, an afternoon of work at worst". Suddenly it's 6months later and you're losing your mind.
August 31st, 2020
Why Understanding beats Knowledge
Understanding beats knowledge every day. To have a strong career, learn to understand, not just to know.
August 28th, 2020
CodeWithSwiz: Privacy-focused embeds for YouTube, Twitter, et al
A new old experiment 👉 regular livecoding. It's like a podcast with video, show notes, regular cadence, and we both learn something new.
August 27th, 2020
Lessons from migrating a 14 year old blog with 1500 posts to Gatsby
After 4 years of putting it off, 1 year of tinkering, a month of work, and $1500 of hired help, my new blog is finally here 🎉 Here's what I learned.
August 24th, 2020
Tech in 2021 according to a VC
August 14th, 2020
When your brain is breaking, try XState
August 10th, 2020
In 2020's, what is "frontend"? 🤨
"He's a frontend guy, is this even a fair question to ask?" The head of engineering was worried about our systems design question …
August 7th, 2020
Why react-hook-form is my new favorite form library
August 3rd, 2020
What if engineers were paid like athletes
July 31st, 2020
Why engineers are worth so much
Engineers don't do the day to day work, they build assets the business can exploit for years to come. That's the magic
July 24th, 2020
5 years of books & courses or how I made $369,000 on the side
5 years ago I moved to America to chase a dream 👉 stop selling time.
July 21st, 2020
Path dependence or why existing code always looks bad
July 6th, 2020
Build a new design system in a couple afternoons
July 3rd, 2020
Wormhole state management
June 29th, 2020
How to grow as a senior engineer or why I got a new job
June 26th, 2020
Hackers
June 22nd, 2020
Using scopes for elegant JAMStack permissions
June 15th, 2020
How to lie with facts
June 5th, 2020
Screw web performance, just wait a little 😈
May 22nd, 2020
Add granular role-based access to your JAMStack app
May 18th, 2020
Looking for the perfect light work device
May 15th, 2020
Don't be weird
May 8th, 2020
What you do while waiting
May 4th, 2020
The 3 types of scalability
May 1st, 2020
Why you should build a form generator
Lemme guess, every project involves 1 or 2 forms and they're all the friggen same. You got forms coming out the wazoo. Render fields. Connect to state. Add field validation. Detect submit. Add form validation. Send fetch request. Repeat.
April 27th, 2020
Don't just wait around
April 24th, 2020
Your dumb ideas often work best
April 23rd, 2020
Announcing: Find Your Idea
April 22nd, 2020
You don't *have* ideas, you develop them
April 21st, 2020
"I just need an idea"
April 20th, 2020
How tests uncover hidden complexity in simple code
April 14th, 2020
The surprising performance boost from changing gif embeds
April 6th, 2020
My favorite lessons from Pragmatic Programmer
March 28th, 2020
Configuring your JAMStack app for prod vs. dev
March 26th, 2020
Stuck at home? Advance your career
March 19th, 2020
How you can start using GraphQL today without changing the backend
GraphQL for new projects looks great ... buuuut how do you use it with that old backend cobbled together in Rails over the last bazillion years?
March 12th, 2020
HOW great engineers hack The Process
March 6th, 2020
Why great engineers hack The Process
March 3rd, 2020
Mocking and testing fetch requests with Jest
February 28th, 2020
Connecting Gumroad to Auth0 for paywalled JAMStack apps
February 24th, 2020
Why you should talk about engineering salaries
February 21st, 2020
Why and how I built my own course platform
Why the heck did I build a course platform for ServerlessReact.Dev when services like Teachable, Podia, Thinkific, and such already exist? Because of friction my friend.
February 14th, 2020
Imagine you could chat with the core of your industry for 5min
February 6th, 2020
Ready to build your future?
January 31st, 2020
5 apps with the modern web stack
January 29th, 2020
How serverless beats servers
January 28th, 2020
How GraphQL blows REST out of the water
Let's have a look at hyow GraphQL makes queries so much easier and more pleasant than REST
January 23rd, 2020
It's never been this easy to build a webapp
We live in exciting times my friend. It's never been this easy to build a webapp and make your first $1,000/month.
January 21st, 2020
Most professional engineers can't build an app from scratch
January 20th, 2020
5 crazy ideas that make $1,000/month
January 17th, 2020
How can you make an extra $1,000 🤔
January 15th, 2020
What could you do with an extra $1,000/month?
January 14th, 2020
Famous last words: Pfft, that's easy
January 10th, 2020
How my bank account went from $909 to $50,000 in 2019
January 3rd, 2020
A holiday CompSci reading list for you 🎅
December 20th, 2019
A promises gotcha that will catch you out
December 16th, 2019
How I answer the door with AWS Lambda and Twilio
December 8th, 2019
Thank you, friend 🦃
November 27th, 2019
What makes you a true master
November 25th, 2019
"I’m a ocean of failure... so I swim"
November 21st, 2019
Towards a Gatsby+Suspense proof-of-concept
November 11th, 2019
Sometimes your worst code is your best code
November 8th, 2019
Experimenting with the new React Concurrent mode
November 6th, 2019
How to recession proof your career
November 1st, 2019
How to succeed as a lead engineer – tactics and mindsets from practice
October 25th, 2019
Is hot dog taco?
What if I told you modern tools let you build and launch a small webapp in 30 minutes? Complete with SSL, a .com domain, a database, a documented API, CDN hosting, fast static initial loads, and a hydrated SPA? That's the challenge I posed at Silicon Valley Code Camp this weekend. The audience didn't believe me, so it was time to perform some magic. 🧙
October 21st, 2019
That time monkey patching took 2 days off my life
October 14th, 2019
DO more _work_ less
October 11th, 2019
REST API best practice in a GraphQL world
GraphQL is taking the world by storm and it is wonderful. But in the real world, you're still dealing with REST APIs aren't you?
September 30th, 2019
"There's a YouTube video for everything"
September 25th, 2019
Moving 13 years of Wordpress blog to Gatsby Markdown
September 23rd, 2019
Building software is a distraction
September 20th, 2019
San Francisco v. Europe part 2
September 16th, 2019
What happens when you push AWS credentials to GitHub
September 13th, 2019
Thoughts on San Francisco after 2 weeks in Europe
September 11th, 2019
The Big Mac index and Jest fetch testing
The Big Mac index is a purchasing power parity index published by The Economist. Jest fetch testing is a tech task so frustrating that it almost made me quit the industry. I'm writing this so you don't have to read 8234721 different blog posts, stack overflow answers, and GitHub threads with conflicting info on how to get Jest and fetch to play together.
August 22nd, 2019
useReducer + useContext for easy global state without libraries
August 12th, 2019
The code is not the goal
July 31st, 2019
Better engineer or More Effective engineer?
July 29th, 2019
A short lesson in debugging complex systems
July 26th, 2019
After 9 months of freedom, today I start a new job
July 22nd, 2019
The day I crashed production 4 times
July 19th, 2019
Friend, go offline
July 12th, 2019
A whole new level of technical decision
July 8th, 2019
Hustle, life, and Bernoulli trials
July 2nd, 2019
A Drilldown Piechart with React and D3
June 28th, 2019
Coders, protect your hands; you won't like coding without em
June 24th, 2019
Build one to throw away
June 19th, 2019
Is JavaScript really getting too complex?
June 10th, 2019
The Principle of Charity in tech
June 5th, 2019
Getting the CSS out of rendered React components
June 3rd, 2019
TypeScript for serverless lambda backends 👌
A few months ago I inherited a Kotlin project. It was an unfinished prototype and all I had to do was wrap it up and deploy. Every time I touched the project, it broke. Nothing worked. Wouldn't run on my machine, wouldn't read API requests, couldn't get tests working, if I changed some code I broke it all. That's when I realized learning a new field is super hard
May 27th, 2019
Just for fun 👉 React vs. jQuery vs. Svelte, same 🐱 app
I was bored Monday night and decided to see if I still know how to build with jQuery. Nothing better to do, no pressing ideas, a bit of fun. Also a favor for a friend who's preparing to talk about React to a bunch of people who've never seen it before 😛
May 24th, 2019
The Phoenix Project recap
May 19th, 2019
LOLCODE-to-JavaScript compiler babel macro
A fully functioning LOLCODE-to-JavaScript compiler implemented as a Babel macro. You never thought you wanted this and now here it is. You're welcome. 🐱
May 16th, 2019
What a hockey legend can teach you about career development
Say your boss gives you $1000 to grow your career. What do you do?
May 9th, 2019
The web moves fast, how do you keep up?
May 7th, 2019
comp sci ain't useless
May 1st, 2019
Build better software with The Theory of Constraints
April 29th, 2019
Freedom from Obligation
April 24th, 2019
Finally, a practical use case for JavaScript generators!
JavaScript generators are amazing. They let you write infinite loops that terminate. Yield values from functions before they finish … and I bet you've never used a JavaScript generator even once did you? I FOUND A USE! A real world practical use-case where generators make your code better. 😱
April 17th, 2019
4 years of coding in San Francisco, lessons learned
April 15th, 2019
Custom markdown extensions with Remark and HAST handlers
April 8th, 2019
Q1 2019 in Swizec LLC land #open
April 4th, 2019
Trying the new ResizeObserver and IntersectionObserver APIs
April 3rd, 2019
What I loved about Reactathon 2019
April 1st, 2019
How Grit superchargers your career
March 22nd, 2019
BrowserStack – a less painful way to test weird browsers
March 20th, 2019
Fixing laggy UI with React.memo
March 18th, 2019
useDimensions – a React Hook to measure DOM nodes
March 13th, 2019
Learning a new field is super hard, I get it now 😅
March 11th, 2019
Why dataviz does better for your career than TODOapps
March 6th, 2019
Behind the curve ... of my bar donut chart 🤨
March 5th, 2019
Pirates’ downfall causes global warming
February 28th, 2019
JavaScript’s most popular dataviz library
February 26th, 2019
Dinosaurs, software engineers, and cholera. What do they have in common?
February 25th, 2019
Do you use any special time tracking software?
February 22nd, 2019
An experiment to merge React and Vue
February 20th, 2019
Indie startup more profitable than Uber 😛
February 18th, 2019
What makes you a senior software engineer anyway?
I used to think a senior engineer was someone who gets a project, understands the context, puts their head down, and gets it done. But no. A senior engineer does so much more than just write code and design systems.
February 13th, 2019
Custom react hooks ❤️
February 11th, 2019
Async, await, catch – error handling that won't drive you crazy
February 8th, 2019
React, D3, and hooks 👉special livecode tonight 9:30pm
February 6th, 2019
Why you don't have time to advance your career
February 4th, 2019
Why CSS-in-JS is winning, an example
January 30th, 2019
Tooltips and state across various d3 charts in a React dashboard!
January 28th, 2019
This kid is amazing
January 25th, 2019
When you don't think you're good enough
January 21st, 2019
Delightful state management with hooks and Constate
January 16th, 2019
A bunch of cool things and neat little tips
January 14th, 2019
Focus on the process, not the goal
January 11th, 2019
How to build a Remark plugin to supercharge your static site
January 9th, 2019
DRY is a footgun, remember to YAGNI
January 7th, 2019
When you code, write down everything
January 4th, 2019
How to use React Context effectively
January 2nd, 2019
How I sidehustled $180k and why it almost killed my business
December 31st, 2018
Logging 1,721,410 events per day with Postgres, Rails, Heroku, and a bit of JavaScript
December 17th, 2018
Never give up
December 14th, 2018
Tooltips ... tooltips are not so easy 🧐
December 10th, 2018
Building a React dataviz with React hooks
December 6th, 2018
Why you should write [code] every day
December 3rd, 2018
React for Dataviz Turkey 🦃 sale report for the curious
November 28th, 2018
Oh the things you can learn with a fun weekend hack project 🏗
November 19th, 2018
Waiting for Godot with callbacks, promises, and async
November 16th, 2018
To experience true flow, try baking 👩🍳
November 14th, 2018
Some life advice I learned from computer science
November 12th, 2018
Announcing D3blackbox and useD3
November 6th, 2018
Easy D3 blackbox components with React hooks
November 1st, 2018
React hooks in a nut shell 🥐
October 29th, 2018
31
October 26th, 2018
Why you aren’t drowning in recruiters, too
October 17th, 2018
Making a Node CLI both global and local
October 15th, 2018
I built a node app to thaw my favorite snack 🥕
October 11th, 2018
It Doesn't Have to be Crazy at Work – a review
October 9th, 2018
Should you work at a startup
October 5th, 2018
The joy of being a beginner
October 3rd, 2018
A lesson in sales from the guy who sold me $1500 of gear when all I wanted was a $100 pair of gloves
September 25th, 2018
How I sponsored my own genius visa
September 21st, 2018
Two days in New York with mum & sis ❤️
September 17th, 2018
Online workshops are MORE interactive than in-person workshops
September 5th, 2018
The most frustrating debugging experience I've had all year
August 28th, 2018
How virtual memory saves lives, workshops, and your sanity
August 21st, 2018
Build responsive SVG layouts with react-svg-flexbox
August 17th, 2018
Lifestyle inflation after 3 years of San Francisco
August 14th, 2018
I'm tired – a poem
August 7th, 2018
ReactVR/react-360 is great, but maybe not quite there yet
August 3rd, 2018
Answering some common questions about React + D3 2018
August 2nd, 2018
Creating the perfect rounded edge with D3 curves
July 31st, 2018
What a 3:36 marathon does to your body
July 30th, 2018
How running a side business is a lot like running a marathon
July 25th, 2018
The surprising benefit of hiring interns to write your code
July 20th, 2018
What Richard Feynman taught me about joy
July 12th, 2018
Hire these interns
July 10th, 2018
The day I drove a Porsche 356 Speedster
July 6th, 2018
Upgrading to Gatsby v2 with the help of the hivemind 👌
June 26th, 2018
What's an intermediate dev anyway?
June 21st, 2018
You have permission to suck
June 19th, 2018
Tech intern job
June 9th, 2018
Use ref callbacks to measure React component size
June 7th, 2018
Tiny React & D3 flamegraph tutorial
June 6th, 2018
Towards a WebRTC mesh network with RTCDataChannel
May 30th, 2018
Some tricks I learned recording & publishing an educational video every day for 30 days
May 24th, 2018
I tried VR on a plane and I'm a believer
May 22nd, 2018
How I prepare for a talk at an 8,000 people conference
May 21st, 2018
Learning WebRTC peer-to-peer communication, part 2 – connecting 2 browsers on different devices
May 16th, 2018
What I learned at MicroConf Growth 2018
May 10th, 2018
Learning WebRTC peer-to-peer communication, part 1
May 7th, 2018
Declarative D3 charts with React 16.3
April 27th, 2018
Using YouTube as a data source in Gatsbyjs
April 24th, 2018
Gratitude is hard – My first week with the Five Minute Journal
April 19th, 2018
Does blogging really drive sales?
April 17th, 2018
Declarative D3 transitions with React 16.3
April 12th, 2018
Blockchain-redux becomes useful, part 1
April 3rd, 2018
What I learned from Piketty's Capital in the 21st Century
March 29th, 2018
Livecoding Recap: A new more versatile React pattern
March 27th, 2018
Reactathon 2018 was a hoot ❤️
March 22nd, 2018
Coding is bad for you
March 16th, 2018
How our engineering team got 12x faster using these 5 lessons about integrating 3rd-party services
March 15th, 2018
Build a Chrome extension from idea to launch in an afternoon
March 13th, 2018
Silky smooth Piechart transitions with React and D3.js
March 9th, 2018
Working IN your career vs. ON your career
March 7th, 2018
Benchmarking Vue
March 5th, 2018
Make your things pretty with chroma-js
March 2nd, 2018
Seamlessly render a Preact component in a React project
February 28th, 2018
Building an interactive DOM benchmark, preliminary results
February 27th, 2018
Why everything must change every five years
February 23rd, 2018
What I learned making my first open source React component
February 21st, 2018
The story of my family is the story of survivorship bias's other side
February 19th, 2018
Loops are the hardest
February 15th, 2018
3 key insights that make D3.js easy to learn
February 8th, 2018
2018 is off to a rocky start
February 7th, 2018
You don't want to build your own list virtualization
Chatroom is slow? I know, I'll just use list virtualization! List virtualization is hard, dear reader. So, how do you virtualize a list?
February 1st, 2018
Fade in lazy loaded images with React and CSS – a quick guide
January 31st, 2018
How to populate react-redux-form with dynamic default values
January 25th, 2018
How to setup Gocommerce on a new Digital Ocean droplet
January 23rd, 2018
Don't say yes when you're happy
January 17th, 2018
Am I thinking too small?
January 11th, 2018
Always put side effects last
January 10th, 2018
Blockchain Redux experiment, part 2
January 4th, 2018
How I sidehustled $72,167 last year, and what I wanna do next
January 3rd, 2018
Advent of Code Day 24 – The A* Algorithm, I think
December 25th, 2017
Advent of Code Day 22 – Sporifica Virus
December 22nd, 2017
Advent of Code Day 20 – Particle Swarm
December 20th, 2017
Advent of Code Day 19 – A Series of Tubes
December 19th, 2017
A blockchain-backed Redux clone in 105 lines of code
December 18th, 2017
Advent of Code Days 17 & 18 – Spinlocks and Interpreters
December 18th, 2017
Advent of Code Day 15 – Dueling JavaScript Generators
December 15th, 2017
Advent of Code Day 14 – Disk Fragmentation
December 14th, 2017
Advent of Code Day 13, Packet Scanners
December 13th, 2017
My new 5K monitor – LG UltraFine 5K 😱
December 11th, 2017
Teaching backend devs how to React and Redux at StubHub Boston
December 7th, 2017
$2535 November sidehustle report
December 4th, 2017
How to DDoS yourself with analytics –– a war story
November 29th, 2017
Livecoding 52: First impressions of Vue
November 20th, 2017
Arcane JavaScript knowledge still useful
November 17th, 2017
How to add real web push notifications to your webapp
You've probably seen web notifications before. YouTube shows them when it goes to a new song, Facebook pings them when a new message comes in, scammy websites ask for permissions and you say no. The usual. You can fire those notifications from anywhere inside your JavaScript.
November 16th, 2017
After a week I must begrudgingly admit VSCode is a better editor than Emacs
November 10th, 2017
Livecoding 51: I did it! My first PR to a big OSS project \o/
November 9th, 2017
My love letter to Prettier
November 8th, 2017
Livecoding Recap 50: How newbie mistakes kill the flow
November 6th, 2017
Why I won't be switching to VSCode any time soon
November 3rd, 2017
$16,863 October sidehustle report
November 2nd, 2017
That one time a simple for-loop increased conversions by 19%
October 20th, 2017
How resumé-driven development shapes our industry
All that once was new is old again
October 19th, 2017
What I learned from teaching StubHub about React and Redux
October 17th, 2017
$9013 September sidehustle report – or why the React + D3v4 launch was not 6 figures or even 5
October 4th, 2017
Livecoding Recap 48: JavaScript async/await and Morty's Mindblowers
October 2nd, 2017
Server-side rendering a D3 chart with React 16
September 28th, 2017
JavaScript promises are just like monads and I can explain both in less than 2 minutes
There's a joke in functional programming that once you understand monads, it becomes impossible to explain them to others. The nuance is nuanced, the details are hard, let’s focus on practice
September 21st, 2017
Livecoding Recap 47: Webpack build progress indicator for Mac Touchbar
September 18th, 2017
How JavaScript linters cause bugs
I was doing code review for a coworker, and it soon became obvious that he used a linter and that the linter gave him a bright idea: _use strict comparisons_.
September 14th, 2017
What it's like to be a statistical super minority in tech
September 12th, 2017
Livecoding Recap #46: 3D is hard, WebAR defeats me
September 11th, 2017
$2629 August sidehustle report
September 8th, 2017
How you can translate any random D3 example to React
August 31st, 2017
Livecoding Recap #44: Dipping my toes in AR.js
August 28th, 2017
The story behind React + D3v4
August 22nd, 2017
How to think of your business logic as data
August 11th, 2017
Livecoding recap #43: A landing page for React + D3v4
August 8th, 2017
How I reverse-engineered Hacker News
August 3rd, 2017
$3426 July sidehustle report
August 2nd, 2017
From couch to sub 4 hour marathon in 4 short years
July 25th, 2017
How to start a sidehustle
July 20th, 2017
Best coding headphones: Bose QuietComfort 35
July 19th, 2017
Livecoding recap #42: HackerNews app where people are nice
July 10th, 2017
$4093 June sidehustle report
July 3rd, 2017
Initial Results of my Patreon Experiment
June 19th, 2017
First day with a new 2017 MacBook Pro
June 15th, 2017
Livecoding recap #40: react-navigation with React Native
June 12th, 2017
Exploring the AST with Babylon and Prettier
June 8th, 2017
$2890 May sidehustle report
June 6th, 2017
Livecoding #39: Towards an AI that writes JavaScript
June 5th, 2017
What I learned from Cal Newport's Deep Work
May 26th, 2017
Do you really need immutable data?
May 24th, 2017
Livecoding #38 - A faux AI that writes JavaScript
May 22nd, 2017
The Best Goulash of your Life
May 18th, 2017
Counting web sessions with JavaScript
How many touch points does your sales process require? Do you need 2 ad clicks or 5? Two shiny demos or one fat video? As an engineer, you might not care, but this is the stuff that keeps your CEO and growth lead and head of product up at night. A business owner that can answer that 👆 question reliably is god.
May 11th, 2017
What happened to React + D3v4?
May 10th, 2017
How I Got Boned by Taxes Two Years in a Row
May 4th, 2017
$2529 April sidehustle report
May 3rd, 2017
Here's why you should never implement your own caching
April 13th, 2017
Livecoding #37- Building a real life color picker
April 11th, 2017
$5874 March sidehustle report
April 4th, 2017
Why I don't write more Nightowls type stuff
April 3rd, 2017
A Fast Mutex Lamport Lock with JavaScript Promises
March 30th, 2017
Time is funny in Ruby
March 29th, 2017
A boutique React & D3v4 workshop – and my first vlog
March 28th, 2017
Why People Read my Weekly Emails
March 20th, 2017
N-body Collision Simulation with React, D3, and MobX
March 16th, 2017
Livecoding #35 - A New Site for reactd3js.com
March 13th, 2017
This is how I connected my Canon DSLR as a webcam
March 9th, 2017
$3875 February sidehustle report
March 7th, 2017
The Trouble with Vacation
March 1st, 2017
Livecoding #34: A Map of Global Migrations, Part 3
February 20th, 2017
Declarative `canvas` Animation with React and Konva
February 16th, 2017
Livecoding #33: A Map of Global Migrations, Part 2
February 13th, 2017
How We Used Webpack to Reduce Our JS Footprint by 50
February 10th, 2017
Livecoding #32: A Map of Global Migrations, Part 1
February 7th, 2017
It ain't stupid if it works
February 1st, 2017
This is Yak Shaving
January 27th, 2017
Nights and Weekends
January 23rd, 2017
Yet another hard lesson about time
January 19th, 2017
Livecoding #30: Dipping my toes in React Native
January 17th, 2017
Migrating to Webpack 2: some tips and gotchas
January 11th, 2017
What I learned while 6x-ing my income in 4 years
January 9th, 2017
60 seconds, 2000 miles
January 4th, 2017
Animating 2048 SVG nodes in React, Preact, Inferno, Vue, Angular 2, and CycleJS – a side-by-side comparison
December 21st, 2016
Livecoding #29: Optimizing React choropleth map rendering
December 19th, 2016
Using HOCs to DRY up your code
December 16th, 2016
If the first page of The Martian was written in different type systems
December 15th, 2016
Dancing tree fractal with React
December 13th, 2016
React Indie Bundle flopped. Here's why.
December 9th, 2016
Fun surprise: UglifyJS can't ES6
December 7th, 2016
Livecoding #28: Productizing the door-answering Slack bot, Part 1
December 5th, 2016
One awkward thing about MobX: Complex models
December 2nd, 2016
Do you even need that bind?
November 29th, 2016
Livecoding #27: New React Indie Bundle page almost done
November 21st, 2016
Fractals in React
November 18th, 2016
Fast, searchable dropdown inputs with React
November 16th, 2016
I made a python script that converts SVG to React ?
November 15th, 2016
Livecoding #26: A new page for a new React Indie Bundle
November 14th, 2016
Let's talk about filter bubbles
November 11th, 2016
Modeling time in React
November 9th, 2016
These 19 Words are the Only Self-Help & Business Advice You Need
November 7th, 2016
How to structure your MobX app for the real world
November 4th, 2016
A tiny ES6 fetch() wrapper that makes your life easier
November 2nd, 2016
How to waste hours of life with fetch() and a bit of brainfart
Both superagent and fetch() enable you to talk to a server. The first produces clean code that gets nesty if you need many things. The second produces clean code that is Promis-y and sometimes cumbersome. The difference between superagent and fetch() isn't that one sends your headers as-given and the other lowercases their names. The difference is that superagent sends a cookie and fetch() doesn't!
November 1st, 2016
Livecoding #25: Adding MobX to a vanilla React project
October 31st, 2016
Simple MobX-driven modals
October 28th, 2016
How to use MobX with create-react-app
October 27th, 2016
I did an AMA, and it wasn't crickets.
October 27th, 2016
Histogram in D3v3 vs D3v4
October 25th, 2016
CSS classes don't work the way you think they work
October 21st, 2016
Go the fuck home
October 20th, 2016
The daring rescue of a parrot in the streets of San Francisco
October 19th, 2016
How to make Slack and Twilio talk to each other
October 18th, 2016
A trick to make your big dataviz load super fast
October 17th, 2016
Why coding is more fun than engineering
October 14th, 2016
WTF is X-Frame-Options?
October 13th, 2016
How much do techie immigrants make?
October 12th, 2016
My weekend at Forefront in New York
October 11th, 2016
You don't need tests
October 6th, 2016
Tying place names to county names with geonames.org
October 4th, 2016
Livecoding #24: A choropleth in React.js
October 3rd, 2016
Some facts about US household income
September 29th, 2016
Chrome's console.log is the slowest
September 28th, 2016
My blog is the best resource online for "60*60"
September 27th, 2016
Livecoding #23: Slackbots and OAuth
September 26th, 2016
Magic shiny paint
September 23rd, 2016
Backbone → React: Handling state with MobX
September 22nd, 2016
Backbone → React: it's a people problem after all ?
September 21st, 2016
Backbone → React – Step 1
September 20th, 2016
Livecoding #22: A door-answering Slackbot
September 19th, 2016
Firefox is slow, Lodash is fast
September 16th, 2016
Object clone performance: preliminary results
September 15th, 2016
Are You an Engineer or a Developer?
September 14th, 2016
Publish every day
September 13th, 2016
A puzzle in JavaScript objects
This is a puzzle you can run into if you’re not careful, and sometimes, despite your best efforts, even if you are careful. It happened to me when I had a settings object that I passed into a view. The view then did things. When I made a new view from the settings object, it looked like the view I had just cleared.
September 9th, 2016
Work on React+D3js ES6 v2 begins in earnest
September 8th, 2016
The one thing flexbox can't do
September 7th, 2016
It's a trap
September 6th, 2016
I Got Schooled
September 2nd, 2016
Backbone with ES6
September 1st, 2016
How to add ESLint to your project
August 31st, 2016
Livecoding #21: Use Babel for libraries, not Webpack
August 29th, 2016
After a year, my first business diary retires
August 26th, 2016
Slack lied to me
August 25th, 2016
It's Just Like Knitting
August 24th, 2016
MacOS filesystem's annoying little quirk
August 23rd, 2016
Animated string diffing with React and D3
August 22nd, 2016
Livecoding #20: You can’t extend an object
August 21st, 2016
Teaching beginners
August 19th, 2016
The ES6 Cheatsheet story and results
August 17th, 2016
Conway’s game of life in Google Docs
August 16th, 2016
Livecoding #19: It’s hard to package a library
August 15th, 2016
JavaScript can fetch() now and it's not THAT great
August 12th, 2016
I broke AJAX in Chrome 52 ?
August 11th, 2016
JS object optimization bug in Chrome 52
August 10th, 2016
Livecoding #18: An abstract React transition component
August 7th, 2016
Livecoding #17: Particle physics is hard
August 4th, 2016
Probably the dumbest idea I ever had
August 2nd, 2016
Livecoding #15: Reaching the limits of canvas redraw speed
July 20th, 2016
Livecoding #13: rendering React components with canvas
June 28th, 2016
The surprising difficulty of paying the US government
June 23rd, 2016
Livecoding #12: towards animating 10k+ elements with React
June 16th, 2016
Things I learned from doing my first workshop
June 9th, 2016
Why I switched to making products
June 3rd, 2016
Does it even make sense to move to San Francisco?
May 13th, 2016
Using d3js transitions in React
April 28th, 2016
How to Make a Piechart using React and d3
April 15th, 2016
Animating with React, Redux, and d3
March 11th, 2016
What I learned from Amanda Palmer's The Art of Asking
February 11th, 2016
How I got a visa normally reserved for nobel laureates
January 15th, 2016
Don't Worry; It's a Compiler Bug
December 29th, 2015
React Indie Bundle report, or how we made $31k in a week
December 18th, 2015
A day is not 60*60*24 seconds long
Days aren't 60*60*24 seconds long. They are 1 day long, which on most days maps to 60*60*24 = 86400 seconds. But not on all days.
November 18th, 2015
There's a "bug" in ES6 modules
November 2nd, 2015
React+Flux can do in just 137 lines what jQuery can do in 10
October 16th, 2015
What I learned from Kathy Sierra's Badass
September 18th, 2015
Lesson learned, test your migrations on the big dataset
September 2nd, 2015
Last night I almost died. A Cadillac "parked" on my board
August 27th, 2015
What I learned from Viktor E. Frankl's Man's Search for Meaning
August 17th, 2015
React components as jQuery plugins
August 7th, 2015
On Saturday I became a Spartan - a story in 23 gifs
July 22nd, 2015
Why offices are where work goes to die
June 25th, 2015
Webpack lazy loading on Rails with CDN support
June 4th, 2015
The Focus app reduced my decision fatigue
May 26th, 2015
This weekend I rented my dream car
May 12th, 2015
Temporarily homeless, a story in one dumb move
April 22nd, 2015
How to wait for DOM elements to show up in modern browsers
March 26th, 2015
The worst software bug I've ever had to deal with as a user
February 12th, 2015
It took me ten months to write a video course
February 5th, 2015
How to run JavaScript tests in Chrome on Travis
January 27th, 2015
Dear tech companies, this is not how you hire engineers
January 20th, 2015
Javascript debugging [slightly] beyond console.log
My favourite tool for javascript debugging is `console.log`. I mean, I love `console.log`. If I ever get a programming tattoo, it's going to be `console.log` or some variation thereof. Simple to use, works every time, and every programming language I've used since I was 9 has had some variation of it.
January 14th, 2015
This is how lifestyle inflation snuck up on me
January 7th, 2015
What I learned about freelancing by getting a haircut
December 18th, 2014
Thank you people of the internet
November 27th, 2014
Code completion is bad mmkay
November 14th, 2014
Kids, always remember to clear your intervals
November 5th, 2014
It's good to be back, but I still don't know where I like it more
October 15th, 2014
I was wrong about AngularJS
September 24th, 2014
What happens when you stop saying No
September 10th, 2014
I ran with the bulls and I survived
August 4th, 2014
With 90k I could become a full-time author
July 18th, 2014
My new favourite Javascript trick
Using returns and callbacks in the same function. Sounds like crazy talk I know, but hear me out, I have good reason. I think.
June 26th, 2014
Why I love Tinder
June 13th, 2014
(ab)Using d3.js to make a Pong game
May 28th, 2014
Feedback my sample d3.js screencast
May 15th, 2014
How to royally cock up as a freelancer
May 6th, 2014
Week 20: Making ad-hoc polymorphism less ad hoc
April 30th, 2014
Writey write about Write the Docs
April 17th, 2014
Week 19: Relativity theory and time perception
April 14th, 2014
How the internet saved my arse, and my longboard
April 7th, 2014
Week 18: the role of diet in periodontal disease
March 18th, 2014
Are introverts more creative?
March 11th, 2014
Week 17: What happens when you only eat meat for a year?
March 3rd, 2014
I returned to Slovenia after 3 months and I am culturally shocked
February 25th, 2014
Week 16: On the criteria to be used in decomposing systems into modules
February 19th, 2014
Week 15: A tutorial on the expressiveness and universality of fold
February 13th, 2014
When the universe tries to communicate, or how I almost didn't get home
February 5th, 2014
Why I don't have a 5 year plan
January 31st, 2014
Week 14, heuristic evaluation of user interfaces
January 28th, 2014
Mixing mixpanel into backbone
January 24th, 2014
Week 13, constructing logic circuits in mammalian cells
January 23rd, 2014
Cirque du Soleil blew my mind
January 16th, 2014
Week 11, Searching the Internet for evidence of time travelers
January 7th, 2014
New Year's in New York
January 6th, 2014
Week 10, The myriad virtues of Wavelet Trees
December 25th, 2013
You, take a break
December 20th, 2013
GoKarting is better than both sex _and_ bacon
December 18th, 2013
Week 9: Life at low Reynold's number
December 16th, 2013
The weirdest thing women say to me
December 11th, 2013
Week 8: What a girl who plays rugby can teach organizational leaders
December 9th, 2013
Week 7: Time, Clocks, and Ordering of Events in a Distributed System
December 3rd, 2013
After three years I finally have a phone number again
November 29th, 2013
How I accidentally lost my social skills
November 26th, 2013
Week 6, A query on confirmation
November 25th, 2013
Getting lucky with Bitcoin
November 19th, 2013
Week 5: Random Structures from LEGO Bricks and Analog Monte Carlo Procedures
November 18th, 2013
LICEcap - best screen capture tool I've ever used
November 14th, 2013
My old code is atrocious
November 12th, 2013
Week 4: Tiny insects evolve anuclear neurons
November 11th, 2013
Week 3: Of lion manes and human beards
November 3rd, 2013
I published a book with a publisher. Here's what the journey was like.
October 29th, 2013
I give up, Apple will never understand dual screen as well as Linux
October 24th, 2013
Week 1: Turing's On computable numbers
October 20th, 2013
About achieving polymorphism in Javascript
October 15th, 2013
Bayesian modeling for the perfect pizza
October 8th, 2013
Adventures in homelessness
September 30th, 2013
Lessons learned in a year of freelancing
September 26th, 2013
My new favourite pomodoro app
September 20th, 2013
Are map, reduce, and filter turing complete?
September 17th, 2013
Why you should never write a book in .doc
September 12th, 2013
This paragraph describes YOU perfectly
September 10th, 2013
30 day fitness experiment with results
September 6th, 2013
A month on the road
September 2nd, 2013
Longtrip, surf's up dude
August 19th, 2013
Longtrip, On the road
August 11th, 2013
Longtrip, barrieri di lingua
August 5th, 2013
Writing modular Backbone with Backbone.SubRoute
July 31st, 2013
Language
July 25th, 2013
Always look for the gem
July 23rd, 2013
So I bought a GoPro ...
July 17th, 2013
CircleCI - sexy continuous integration for private repos
July 5th, 2013
Age
July 2nd, 2013
Onboard a Delta transatlantic flight with tattered seats
June 29th, 2013
Onboard a Delta transatlantic flight with tattered seats
June 28th, 2013
Force users to add a facebook login with devise omniauth
June 20th, 2013
Peeshkot - cookie warnings, go away!
June 19th, 2013
Facebook ads: good for likes, bad for sales
June 12th, 2013
I infiltrated another Rails Girls event, #RailsGirlsMb
June 4th, 2013
Dynamic languages have jumped the shark
May 31st, 2013
How I became a 3 hour per day workout nutter
May 28th, 2013
How Draft got me to pay for a free product
May 21st, 2013
An English pet peeve
May 14th, 2013
Write sitting down, edit standing up
May 9th, 2013
Mouse movements in a day of coding
May 7th, 2013
Videos from first Javascript meetup in Ljubljana
May 3rd, 2013
Writing a REST client in Haskell
April 25th, 2013
I love being a geek
April 23rd, 2013
First JavaScript meetup in Ljubljana is right around the corner
April 18th, 2013
How CamelCase ruined my day and my dev environment
April 16th, 2013
The most pleasant job interview I have ever had
April 11th, 2013
Canada, eh?
April 9th, 2013
Why you don't have a flight transfer in North America
April 2nd, 2013
A tale about always-on DRM and web security
March 28th, 2013
It takes about two months to write a technical book
March 26th, 2013
Testing Javascript API calls with Capybara and puffing-billy
March 14th, 2013
Sexy animated spirographs in 35 sloc of d3.js
March 7th, 2013
#ifihadglass - the app I want to build
February 28th, 2013
Da Vinci - The Genius
February 26th, 2013
Breaking bounds with BoundBreaker
February 19th, 2013
In praise of the pass phrase
February 14th, 2013
The first Barcamp Sarajevo
February 12th, 2013
First impressions of Rails as a Javascripter
February 7th, 2013
A geek goes surfing in the Adriatic
February 5th, 2013
Vine - the crappiest app I can't help but love
January 31st, 2013
First lessons learned about writing technical books
January 29th, 2013
Numbers that baffle
January 22nd, 2013
Cool thing Thursday: Daleron Cold 3
January 17th, 2013
The trials and tribulations of a large-ish dataset
January 15th, 2013
My very own daily WTF
January 10th, 2013
Project soundtracks - how I killed procrastination
January 8th, 2013
A New Year's Eve in Belgrade
January 3rd, 2013
Testing Backbone apps with Mocha
December 27th, 2012
Thoughts while munching green tea fortune cookies
December 26th, 2012
Bacon muffins - a doomsday experiment in cooking
December 22nd, 2012
The 10x developer in you
December 20th, 2012
The 10x programmer in you
December 20th, 2012
Best TEDx event I've been to #tedxlj
December 18th, 2012
I infiltrated #railsgirlslj, here's what it was like
December 17th, 2012
Elegantly using socket.io in backbone apps
December 14th, 2012
Cool thing Thursday: A 300 euro keyboard
December 13th, 2012
Is writing the same as coding?
December 11th, 2012
Cool thing Thursday: Emacs tramp-mode
December 6th, 2012
Being young and naive
December 4th, 2012
Testing socket.io apps
November 30th, 2012
Cool thing Thursday: alertify.js
November 29th, 2012
Webcamp Zagreb report
November 27th, 2012
Cool thing Thursday: Leanpub
November 22nd, 2012
I made $730 by selling an unfinished book for 3 days.
November 20th, 2012
Game development in Webgl
November 19th, 2012
Cool thing Thursday: HelloSign
November 15th, 2012
What writing a book feels like
November 14th, 2012
Single page web apps: the worst of both worlds
November 12th, 2012
Cool thing Thursday: iA Writer
November 8th, 2012
A retrospective of an unproductive day
November 6th, 2012
How to tell a phone your website is an app
November 5th, 2012
Experienced developers can't solve this problem
November 2nd, 2012
Cool thing thursday: Pocket.co - feed your inner internetovore, keep your browser happy
November 1st, 2012
Lessons learned after a month of freelancing full time
October 30th, 2012
Symfony and the scary world of PHP
October 26th, 2012
Apple just doesn't get it anymore
October 24th, 2012
A week in Paris
October 22nd, 2012
Cool thing Thursday: Dream of Pixels
October 11th, 2012
Why you can't focus on a single great idea
October 9th, 2012
Simple trick that lets you code twice as fast
October 8th, 2012
Aho-Corasick string matching algorithm in Haskell
October 5th, 2012
Implementing the aho-corasick algorithm in Haskell
October 5th, 2012
Cool thing Thursday: Fog of World
October 4th, 2012
Elementary.
October 2nd, 2012
Quick scatterplot tutorial for d3.js
September 28th, 2012
Cool thing Thursday: Ceylon
September 27th, 2012
On becoming a college dropout
September 25th, 2012
Markov chain poem trainer+generator in 29 sloc of Haskell
September 21st, 2012
Cool thing thursday: in-browser 3D modeling with live preview
September 20th, 2012
Fizzbuzz without ifs in 90 char. I will buy you a beer if you can do better.
September 17th, 2012
Teleportation, would you use it?
September 13th, 2012
Turns out I'll be writing a book
September 11th, 2012
Waking up early - the best way to waste the day
September 6th, 2012
DO benchmark yourself against normal
September 4th, 2012
Monads, monads, monads, monads
September 3rd, 2012
I've hit a glass ceiling of coding productivity. Now what?
August 30th, 2012
Services I want to pay for
August 28th, 2012
Python and lazy evaluation
August 24th, 2012
The birth of LISP - a summary of John McCarthy's original paper
August 22nd, 2012
Is there a freelancer friendly bank?
August 21st, 2012
Amdahl's law in action - 27s to 0.03s by changing a function
August 17th, 2012
Entrepreneurs, this is how much confidence you need
August 16th, 2012
App.net put a price on early adopter pride. And it worked.
August 14th, 2012
An elegant way to randomly change every list member in Haskell
August 13th, 2012
Scraping with Mechanize and BeautifulSoup
August 10th, 2012
My first longboarding event
August 9th, 2012
Despite daily strength training I'm not fit enough for WW2
August 7th, 2012
A roadtrip: fin
August 6th, 2012
A roadtrip: second leg
July 31st, 2012
A roadtrip: wherein Swizec is not to be trusted with important objects without supervision
July 29th, 2012
A roadtrip: First leg
July 27th, 2012
My first Pecha Kucha talk
July 25th, 2012
If this is NSFW you should quit
July 24th, 2012
Blackbox testing node.js apps
July 23rd, 2012
Why I will always suck at programming [Grega Stritar]
July 19th, 2012
Geek at a music festival: Day 5
July 16th, 2012
Geek at a music festival: Day 4
July 15th, 2012
Geek at a music festival: Day 3
July 14th, 2012
Geek at a music festival: Day 2
July 13th, 2012
Geek at a music festival: Day 1
July 12th, 2012
A history of my worst technical achievements
July 9th, 2012
Levenshtein distance in Haskell
July 6th, 2012
Fun with cheap iPhone lenses
July 5th, 2012
Weather - the best thing about Silicon Valley
July 3rd, 2012
What is leisure?
July 3rd, 2012
Haskell and randomness
July 2nd, 2012
You don't have to cross the chasm anymore
June 26th, 2012
Can you make a CAPTCHA to tell coders from non-coders?
June 21st, 2012
Give me your guestpost and I will give you my love!
June 20th, 2012
How to make the perfect iPad stand out of LEGO's
June 19th, 2012
Why I still haven't learned Haskell
June 18th, 2012
a post about this
June 15th, 2012
Making statsd talk directly to a browser
June 15th, 2012
The best 70 cents I have ever spent on the iStore
June 14th, 2012
A patent for swinging on a swing
June 12th, 2012
Why people making compilers are superheroes
June 11th, 2012
there was an idea in this post
June 9th, 2012
why I don't sleep
June 9th, 2012
New Foursquare [screengrab porn]
June 7th, 2012
Do waste many a single moment
June 5th, 2012
Flotr2 - my favorite javascript graph library
June 1st, 2012
Natural Language Generation system architectures
May 30th, 2012
Project Management Techniques to Help Start-ups
May 29th, 2012
Programmers are optimists
May 25th, 2012
This week, the future finally started
May 24th, 2012
Can you pay one compliment to one stranger every day?
May 22nd, 2012
Disability, startups and loneliness
May 21st, 2012
A year of 750words.com - with shiny graphs
May 18th, 2012
Web page segmentation
May 16th, 2012
Inside a Google onsite interview
May 15th, 2012
Remember to feed your sysadmins
May 14th, 2012
My brain can't handle OOP anymore
May 7th, 2012
Steal my startup idea: Rent-a-mum
May 4th, 2012
Skype does not an IDE make
May 2nd, 2012
Three benefits of trying to gain weight
May 1st, 2012
Making our irc bot talk
April 25th, 2012
There is no do or do not, only try
April 24th, 2012
My impressions of Diablo 3
April 22nd, 2012
Does a new age of kings approach?
April 19th, 2012
Comparing automatic poetry generators
April 18th, 2012
The most fun you can have offline
April 17th, 2012
Using Backbone to improve multiselects
April 13th, 2012
What Refactoring is, and what it isn't
April 11th, 2012
Google+ redesigned into Facebook
April 11th, 2012
19 months from launch to $1,000,000,000 acquisition: Instagram
April 10th, 2012
Tracking RSS readers with Google Analytics
April 6th, 2012
A few thoughts on blogging inspiration
April 5th, 2012
Would you subscribe to this service?
April 5th, 2012
Online, real names provide anonymity
April 3rd, 2012
The exciting future Javascript
April 2nd, 2012
My language is better than yours
March 30th, 2012
Science Wednesday: Defining poetry
March 28th, 2012
An evil business model that works
March 27th, 2012
A test post and a story
March 25th, 2012
I wish this existed
March 23rd, 2012
I am a software developer, not a 15 year old
March 22nd, 2012
What Starting feels like
March 21st, 2012
Selling to girls
March 20th, 2012
Django and IE9 don't play well together
March 19th, 2012
Planica up close
March 17th, 2012
For better productivity, I watch 6 hours of TV a week
March 15th, 2012
Closure and currying magic for cleaner javascript
March 14th, 2012
The one book that gets me offline
March 13th, 2012
Webdevs, you have no idea how much you know
March 12th, 2012
Startup world, Y U SUCK AT MOTIVATE?
March 9th, 2012
Why geeks think girls don't like them
March 6th, 2012
How to make your django app slow
March 5th, 2012
A Google phone interview
March 2nd, 2012
I'm a pro blogger now!
March 1st, 2012
A talk that changes everything
February 28th, 2012
Unit testing is for lazy people
February 27th, 2012
The commonest javascript bug
February 24th, 2012
I made a steampunk costume
February 23rd, 2012
FANN - neural networks made easy
February 20th, 2012
I walked all over a lake!
February 18th, 2012
Two business things Slovenia needs to change
February 15th, 2012
Possibly the ugliest python ever to escape my brain
February 13th, 2012
Study Break! What students do for mental breaks from studying
February 12th, 2012
Why every entrepreneur should take up boxing
February 10th, 2012
Amazing air machines
February 8th, 2012
The greatest story I have to tell
February 7th, 2012
Udacity - learn how to give an autonomous car its brain
February 6th, 2012
Top 10 iPhone Apps for Web Designers
February 3rd, 2012
TEDxBled pitch
February 2nd, 2012
Everyone should learn [about] programming
February 1st, 2012
Three cool things
January 31st, 2012
Heroku, mongo, node.js - a problem
January 30th, 2012
Lychrel numbers
January 27th, 2012
A month wasted
January 26th, 2012
A visit to the dentist
January 25th, 2012
I Don't Know
January 24th, 2012
I Don't Know
January 24th, 2012
Appcelerator Titanium might've made it to my toolbox
January 23rd, 2012
This Haskell is wrong. Why?
January 20th, 2012
Blogging, hats, stuff
January 19th, 2012
Are you a boy scout coder?
January 17th, 2012
Shoes
January 16th, 2012
Why you don't exercise every day
January 15th, 2012
Geeks of america, please start fighting SOPA
January 12th, 2012
Minimum substring cover problem
January 11th, 2012
The No brown M&M's rule
January 10th, 2012
Collatz, Haskell and Memoization
January 9th, 2012
A message from your future self
January 6th, 2012
A message from your future self
January 6th, 2012
Programmers are born not made
January 5th, 2012
Deca - a cool systems programming language
January 4th, 2012
Stypi - the perfect blogging tool
January 3rd, 2012
We take Carpe Diem too seriously
January 2nd, 2012
Sabbatical week day 3: Raining datatypes
December 29th, 2011
Sabbatical week day 2: I fail at Octave
December 28th, 2011
Sabbatical week day 1: Toshl and Toggl datasets
December 27th, 2011
Learning me a Haskell
December 23rd, 2011
The problem with threads
December 21st, 2011
Today I nearly died ... four times
December 21st, 2011
5 months of blog traffic in 4 days
December 20th, 2011
A lesson about client-side templating
December 19th, 2011
Why programmers work at night
December 15th, 2011
Why programmers work at night
December 15th, 2011
Science Wednesday: Self-driving cars
December 14th, 2011
The best $5 I have ever spent
December 13th, 2011
Javascript's lack of strftime
December 12th, 2011
A food experiment
December 9th, 2011
Can I please take all my classes online?
December 8th, 2011
Fun javascript feature
December 7th, 2011
Stop being so fucking productive
December 6th, 2011
I kicked myself in the balls
December 5th, 2011
Simple trick for testing forms full of checkboxes with django
December 2nd, 2011
I wish my doctor was a vet
December 1st, 2011
Shuush - perfect tool for all my twitter followers
November 30th, 2011
Music and The Zone
November 29th, 2011
A turing machine in 133 bytes of javascript
November 28th, 2011
On writing every day
November 24th, 2011
Nondeterministic turing machine simulator in 23 lines of JavaScript
November 23rd, 2011
TEDxYouth Ljubljana report
November 22nd, 2011
Best blogging week I have ever had
November 21st, 2011
Strangest line of python you have ever seen
November 18th, 2011
Why I only work with startups
November 17th, 2011
I suck at implementing neural networks in octave
November 15th, 2011
We are not generation sell
November 15th, 2011
TV's are now computers O.o
November 14th, 2011
fun vs. reason
November 12th, 2011
Parsing JavaScript with JavaScript
November 11th, 2011
Timekiwi - delicious timelines
November 10th, 2011
I think I finally understand what a neural network is
November 9th, 2011
Going to the dentist is like trying out a new opensource project
November 8th, 2011
@donalddesantis is wrong about girls
November 6th, 2011
First steps with Octave and machine learning
November 4th, 2011
Sleep hacking
November 3rd, 2011
Handling timezones in python
November 2nd, 2011
Poking a sleeping giant
November 1st, 2011
Beardvember. DOIT!
October 31st, 2011
Making a Möbius cake
October 30th, 2011
Notebook fetishism
October 27th, 2011
"Startup rollercoaster" isn't even the half of it
October 25th, 2011
The strange world of getting user data onto a piece of paper
October 24th, 2011
#WebcampLj was bitchin'
October 23rd, 2011
postme.me - idea to sales in 3 days
October 20th, 2011
Weird feeds
October 20th, 2011
A for loop is not a for loop is not a for loop
October 19th, 2011
Programmers are fucking lazy
October 18th, 2011
Firefox's "funny" css3 image scaling quirk
October 17th, 2011
Economy next on the noobs' list of things to ruin?
October 15th, 2011
A technical post about cake
October 14th, 2011
What are you proud of?
October 13th, 2011
ml-class.org vs. real world ML class
October 11th, 2011
Crowdsourcing elegance
October 10th, 2011
Functional isn't always better
October 7th, 2011
Steve Jobs
October 6th, 2011
Quick and easy way to getting burned by nginx
October 5th, 2011
I suck at [formal] education or does education suck?
October 4th, 2011
Collect your data carefully, a lesson
October 3rd, 2011
I want to analyze your blog
September 30th, 2011
Measuring vocabulary richness with python
September 28th, 2011
NaN does not equal NaN
September 27th, 2011
The end of my internet diet experiment
September 26th, 2011
#Geeksonwater
September 24th, 2011
Spending money online is crazy hard!
September 24th, 2011
Calorie counting is silly
September 20th, 2011
Mac OS X Lion and Wi-Fi
September 18th, 2011
So how many readers _actually_ read a blog post?
September 16th, 2011
Seems I am in love with learning
September 14th, 2011
A longboard and a school system
September 12th, 2011
KVM and the great outdoors
September 11th, 2011
The quickreading
September 10th, 2011
I learned two things today 9.9.
September 9th, 2011
I learned four things today 8.9.
September 8th, 2011
Our intuitive understanding of distance fails us
September 6th, 2011
I learned two things today 5.8.
September 5th, 2011
I learned two things today 4.8.
September 4th, 2011
I learned two things today 3.9.
September 3rd, 2011
I learned two things today 31.8.
August 31st, 2011
I went through YC as an intern, here's what I learned
August 31st, 2011
I learned two things today 30.8.
August 30th, 2011
I learned two things today 29.8.
August 29th, 2011
I learned two things today 29.8.
August 28th, 2011
I learned two things today 27.8.
August 27th, 2011
Why don't computers understand timezones?
August 25th, 2011
I learned two things today 25.8.
August 25th, 2011
I learned a couple of things these days 22.8. 23.8. 24.8.
August 24th, 2011
I learned two things today 21.8.
August 21st, 2011
I learned two things today 20.8.
August 20th, 2011
I learned two things today 19.8.
August 19th, 2011
Why an internet diet and not cold turkey
August 19th, 2011
I learned two things today 18.8.
August 18th, 2011
I learned two things today 16.8.
August 17th, 2011
I learned two things today 17.8.
August 17th, 2011
My ideas are shitty so I'm going on an internet diet
August 17th, 2011
I learned two things today 16.8.
August 16th, 2011
I learned two things today 14.8.
August 14th, 2011
How Ayrton Senna can make you a better anything
August 12th, 2011
I learned two things today 12.8.
August 12th, 2011
I learned two things today 10.8.
August 11th, 2011
I learned two things today 11.8.
August 11th, 2011
Software dev isn't just a logical process
August 10th, 2011
I learned two things today 9.8.
August 9th, 2011
I learned two things today 8.8.
August 8th, 2011
I learned two things today 6.8.
August 7th, 2011
I learned two things today 7.8.
August 7th, 2011
I learned two things today 5.8.
August 6th, 2011
The man you want to be does not matter
August 3rd, 2011
I learned two things today 2.8.
August 2nd, 2011
I learned two things today 1.8.
August 1st, 2011
I learned two things today 31.7
July 31st, 2011
I learned two things today 30.7.
July 30th, 2011
I learned two things today 29.7.
July 29th, 2011
Somebody finally figured out how to do marketing on Twitter!
July 25th, 2011
Someone finally figured out how to market on Twitter
July 25th, 2011
Crayons ... best productivity hack ever?
July 21st, 2011
I learned two things today
July 18th, 2011
Going from Slovenia to Palo Alto ... what culture shock?
July 14th, 2011
The entrepreneur's curse
July 11th, 2011
Your Twitter bio sucks - I think I can fix it
July 7th, 2011
First steps with OS X Lion
July 5th, 2011
JavaScript's native map reduce and filter are wrong
June 29th, 2011
I couldn't get into YC so I joined a startup that did
June 24th, 2011
Living life in 25min increments
June 21st, 2011
Daemonizing node.js processes
June 19th, 2011
I am not an entrepreneur, I am an indie web developer
June 17th, 2011
Lifepath.me is the shiniest web thing
June 17th, 2011
Using backbone.js for fun and profit
June 17th, 2011
My new footer gives you a glimpse into my life
June 14th, 2011
The Twitters pitched 5 products, why I chose the first
June 9th, 2011
Doing a startup taught me the value of staying in school
June 2nd, 2011
Why trolling is a art
May 30th, 2011
Implementing a weighed random choice in Clojure
May 26th, 2011
node-unshortener can unshort any url
May 21st, 2011
750 words a day keeps the insanity away
May 16th, 2011
Using prime numbers to generate pretty trees
May 10th, 2011
Don't be a quiet professional
May 4th, 2011
What Munchkins can teach us about entrepreneurship
May 4th, 2011
Ubuntu's app management better than Apple's
April 30th, 2011
Even with Narwhals ubuntu is still a bitch to install
April 27th, 2011
The three types of projects worth your time
April 18th, 2011
A cool JavaScript property you never noticed
A few years ago I was playing around with JavaScript trying to find the cleanest way to implement callbacks in functions. Primarily I wanted a readable way to make certain the last argument passed is a callback, withut having to rely on knowing how many arguments there are and so on. Instead I stumbled upon a pretty cool feature of how javascript handles function arguments.
April 16th, 2011
Benchmarking node, tornado and django for concurrency
April 15th, 2011
Comparing clojure and node.js for speed
April 7th, 2011
Circadian rhythm meltdown
April 5th, 2011
Checking for primes? Dumber algorithm is faster algorithm
March 21st, 2011
Project euler is a fun way to become a better geek
March 8th, 2011
I got punched in the face and survived
February 27th, 2011
A case for multi-tasking
January 24th, 2011
Tweet a photo every time your mac wakes up with a simple hack
January 14th, 2011
Execution shapes ideas
January 3rd, 2011
DjangoCamp was bangin'! (before unseen epic last slide of my talk)
December 13th, 2010
The Internet at war
December 9th, 2010
Twitter censoring the WikiLeaks debate?
December 5th, 2010
Evolving a poem with an hour of python hacking
November 30th, 2010
Workflowy is to TODO as git is to svn
November 23rd, 2010
Clients need deadlines too
November 10th, 2010
Clients need deadlines too
November 10th, 2010
A wit
November 3rd, 2010
600 word essay on the positive merits of politeness
November 2nd, 2010
Some general impressions of the US
November 1st, 2010
A flight
October 14th, 2010
Doing nothing is the hardest thing ever
October 4th, 2010
Hard work is a total waste of time
September 22nd, 2010
RSS not dead, just misunderstood
September 14th, 2010
Apple's Ping is a big pile of steaming dung
September 3rd, 2010
On the buying of new hair and other silly stuff
August 23rd, 2010
The strangestest Hello World I ever made
August 19th, 2010
Programatically uploading to blobstore in python
August 10th, 2010
Django protip #2: Forms are awesome
August 3rd, 2010
The mountains are beautiful magnificent beasts
July 26th, 2010
Django protip #1: A better App structure
July 21st, 2010
Small trick for seamless base64 password storage in django
July 14th, 2010
Barefoot running
July 6th, 2010
Today was the worst day I've ever had
June 21st, 2010
This summer a bunch of hackers might realize your crazy idea
June 18th, 2010
List of things I need to do before I'm 30
June 10th, 2010
The best post in the history of posting on the internets
June 6th, 2010
The upcoming month right out from hell!
May 31st, 2010
Malo delo? Poserjem se na vas in vaše demonstracije
May 18th, 2010
An engineer's view on philosophy
May 12th, 2010
asfdasdf
May 10th, 2010
Tracking runs is fun! :D
April 30th, 2010
First hike of the season
April 26th, 2010
Do you memento mori?
April 21st, 2010
The sad state of BlackBerry apps
April 19th, 2010
A little bit of burn out? Perhaps
April 15th, 2010
Processing as-you-read in clojure
April 12th, 2010
How long is your coding schlong?
April 7th, 2010
How I justified a weekend of videogaming and gorging as an exercise in hardcore personal improvement
April 6th, 2010
The creepiest fucking image ever!
March 30th, 2010
Yay my blog is up and running again! :D
March 29th, 2010
David Heinemeier Hansson is wrong! Startups work.
March 26th, 2010
Pure Pwnage is the best show ever
March 22nd, 2010
Student+entrepreneur != hard
March 18th, 2010
The bliss and curse of mindsets
March 15th, 2010
The Slavic Esperanto
March 8th, 2010
Philosophers are crazy people!
March 5th, 2010
How Men Who Stare At Goats gave me a breakthrough
February 26th, 2010
The real-time WebCamp bash
February 21st, 2010
Splitting and merging django models with perfect transparency
February 18th, 2010
Exam season eats time like women, internet and television combined
February 15th, 2010
Maths is purdiful
February 4th, 2010
Apple pulls another Newton with the iPad
January 27th, 2010
Caek!
January 23rd, 2010
Why bigger penis == bigger confidence [nsfw-ish]
January 20th, 2010
Python multiprocessing is fucking sweet
January 18th, 2010
How ikigai has changed my style
January 12th, 2010
How Lisp changed my style
January 11th, 2010
The kind of professor we can all but hope to meet some day
January 11th, 2010
How Ikigai has changed my style
January 10th, 2010
Ljubljana hasn't heard of plows --> snow driving yayz!
January 8th, 2010
The best copypasta ever copy pasted
January 8th, 2010
Came up with a wisdom
January 6th, 2010
The greatest casual game ever devised
January 6th, 2010
3 pikchurs of a pretty goat
January 4th, 2010
Kids, shrooms are fucking cool
January 1st, 2010
Rape has never been so beautiful
December 31st, 2009
Everybody should watch Children of Men
December 28th, 2009
These are the times I love my job
December 28th, 2009
Like Angelina and Scarlet having sex with your eyes
December 23rd, 2009
Holidays - finally some time to work!
December 21st, 2009
Brittany Murphy was really hawt
December 21st, 2009
How the card is chosen
December 18th, 2009
How I discovered one of the greatest influences on my life
December 15th, 2009
Switching from apache to nginx is a dream
December 14th, 2009
The webcomics I love
December 13th, 2009
A quick quip
December 11th, 2009
A careless rant about human rights
December 10th, 2009
Why the digital book revolution is stupid
December 8th, 2009
Heaven is where your code lies
December 7th, 2009
Lost a freelance project, but gained a knowledge
December 2nd, 2009
Shaved! \o/
December 1st, 2009
Webcamp Ljubljana was a blast
November 29th, 2009
DJ Dejan - a NSFW blast from the past
November 29th, 2009
Google stoops to their level, fights freedom
November 26th, 2009
Pirating Hulu et al. is fighting racism!
November 24th, 2009
The perfect woman [nsfw]
November 24th, 2009
NaNoWriMo day19, so not gonna make it
November 19th, 2009
A portfolio is born
November 17th, 2009
Humar bi moral postati legenda, pa ne bo
November 14th, 2009
Howto convince the iStore you're from the US and circumvent regional copyright restrictions
November 12th, 2009
The power of 20 minutes - an inspiration
November 12th, 2009
NaNoWriMo day 12 - sloooowly, very slooowly
November 12th, 2009
NaNoWriMo day 10 - where the fuck did the week go?
November 10th, 2009
Grindhouse fucking rawks
November 8th, 2009
Firefox personas - best thing ever
November 6th, 2009
NaNoWriMo day 4+5, it just takes determination
November 5th, 2009
Open question, please help
November 4th, 2009
NaNoWriMo day3, when nothing happens
November 3rd, 2009
NaNoWriMo day2, time goes quick
November 2nd, 2009
Gonzo Steampunk Vampires, Halloween and Beards
November 1st, 2009
NaNoWriMo day1, or how strange inspiration can be
November 1st, 2009
Ubuntu release party, start:up and weed
October 30th, 2009
Why people use IDE's (and how badly Win7 sucks)
October 25th, 2009
What I learned of PHP by ignoring it for three months
October 23rd, 2009
A smart (funny?) words I said
October 21st, 2009
You know what, I fucking love my faculty (FRI)
October 19th, 2009
The university lecture structure is all wrong
October 13th, 2009
My life is a derivative of a derivative
October 11th, 2009
How I kicked my caffeine habbit in 10 painful steps
October 7th, 2009
Yeah but you're weird
October 6th, 2009
Drunk driving is manslaughter!
October 4th, 2009
The nightmare of switching to openSUSE 11.0 from Kubuntu
September 28th, 2009
First traditional pub&bar crawl 2009
September 23rd, 2009
A smart words I said
September 19th, 2009
Of London, Murphy and Seedcamp
September 14th, 2009
My room in "funny" pictures
September 13th, 2009
A season for catching colds
September 6th, 2009
Snow Leopards in mah rooms!
September 2nd, 2009
Fighting Twitter spam with bayes
August 31st, 2009
Everyone should work out! (here's why)
August 27th, 2009
Why is working out worth it?
August 27th, 2009
The asinine pricing of Snow Leopard
August 26th, 2009
From idea to seedcamp application in a week
August 24th, 2009
Having discipline is painful
August 17th, 2009
Do we rely on open APIs too much?
August 12th, 2009
How MAFIAA killed itself and why Goth is undead
August 10th, 2009
The ten pros and cons of unit testing
August 4th, 2009
Why I hate working from home
July 30th, 2009
Incapable of proper sunscreen use
July 27th, 2009
Erasem's Knight's Tournament 2009 (with pics)
July 20th, 2009
Running bloody hurts
July 18th, 2009
jQuery imageless buttons a la Google get an update
July 12th, 2009
Br
July 10th, 2009
Linear algebra assistants are the RIAA
July 7th, 2009
Our digital lives are empty and sad
June 29th, 2009
Unit testing is anti-productive
June 23rd, 2009
Slovenia desperately needs more burlesque
June 19th, 2009
New steampunk crap in my room
June 14th, 2009
Internet memestalgia
June 11th, 2009
I am a Groundbreaking Thinker ...
June 10th, 2009
Slovenia php conference day2 (live blogging)
June 6th, 2009
Slovenia Php Conference 2009 (live blogging)
June 5th, 2009
The game of Quantum Wolf Hunt
May 31st, 2009
Coraline 3D was fab
May 25th, 2009
Debauchery at BcLj2
May 16th, 2009
A sonnet to Boob
May 11th, 2009
Duke Nukem Forever is never
May 7th, 2009
Mini Seedcamp Ljubljana finalists congratz
May 4th, 2009
Videogame realism - ouch
April 30th, 2009
Change is good, change we like
April 23rd, 2009
Time is short whey you're old
April 17th, 2009
The failing economy paradox
April 5th, 2009
A King was happy to give me his palace
April 2nd, 2009
The day my elaborate prank failed
April 1st, 2009
A man's straying eyes
March 31st, 2009
Battlestar Galactica - best video novel ever
March 31st, 2009
Followers don't matter
March 31st, 2009
Ville Depp and Johnny Valo
March 27th, 2009
I swallowed a dead raccoon
March 26th, 2009
Adobe AIR's javascript no eval or include is moronic
March 25th, 2009
Stupid users are a myth
March 17th, 2009
Man better transport than Car
March 16th, 2009
Moved to wordpress
March 15th, 2009
Dietary experiments
March 10th, 2009
World of Goo is the third game I ever bought legally
March 7th, 2009
The sixth photo
March 2nd, 2009
Safari 4 sucks. But how badly?
February 26th, 2009
jQuery imageless buttons a la Google take two
February 19th, 2009
jQuery imageless buttons a la Google
February 17th, 2009
Online buzz is quite cool
February 13th, 2009
This is why I hate mornings
February 10th, 2009
God and science are in love
February 5th, 2009
Paradigm shifts - where agile development fails
February 3rd, 2009
Algorithm for unlocking any man's heart
January 30th, 2009
Why MAFIAA is fighting a losing battle
January 27th, 2009
Girls night and writing
January 25th, 2009
Exam season and analysis fail
January 23rd, 2009
Edgar Allan Poe was 200 yesterday
January 20th, 2009
My barcamp Ljubljana report
January 18th, 2009
How to induce lucid REM
January 14th, 2009
Powernaps and gambling
January 13th, 2009
Bitter cold and Neil Gaiman
January 12th, 2009
How noobs are destroying the world
January 10th, 2009
A young boy named Jake
January 7th, 2009
Idiocy and overpolitisation
January 7th, 2009
When you can't algorithm, photowalk
January 4th, 2009
Why being creative sucks
January 4th, 2009
And so it ends
January 1st, 2009
In year 2009 I will ...
December 29th, 2008
Seven christmas truths
December 24th, 2008
Ljubljana Kabaret vs. London Cabaret
December 22nd, 2008
iFart is making me want an iPhone
December 17th, 2008
Klok - the missing PIM application
December 16th, 2008
What does The Picture of Dorian Gray mean
December 14th, 2008
Human rights day and why it shouldn't exist
December 10th, 2008
Photowalk #2
December 7th, 2008
How to drive an 800% traffic spike to your blog
December 4th, 2008
Five reasons a developer should avoid Adobe AIR
December 1st, 2008
Five reasons you should develop in Adobe AIR
November 27th, 2008
My first weekly photowalk
November 24th, 2008
Old at one and twenty
November 23rd, 2008
The underwear your girlfriend really wants you to wear
November 21st, 2008
History of Everything
November 20th, 2008
I are officially kind of smart
November 19th, 2008
Clean Code and speed coding
November 17th, 2008
My twitter goals
November 10th, 2008
Took IQ test - found problem
November 10th, 2008
Moo cards - best thing since kitten litter
November 7th, 2008
Obama wins
November 4th, 2008
Upgrading to ubuntu 8.10 hurts
November 3rd, 2008
Even good blogs need help
November 2nd, 2008
Dirty hacks are everywhere
October 29th, 2008
Late-night fun
October 29th, 2008
10 questions you thought were polite but aren't
October 27th, 2008
What blogs are all about
October 25th, 2008
Wien is nothing special
October 22nd, 2008
Vienna day two
October 19th, 2008
Vienna day one
October 18th, 2008
Blackberries are arsehats
October 16th, 2008
Drug use is not abuse
October 13th, 2008
Twitter solves massive bug
October 13th, 2008
The mind of a wandering software poet
October 9th, 2008
Switching to feed readers
October 8th, 2008
17 hour workday Sunday
October 6th, 2008
Blog redone
October 5th, 2008
God and science don't matter
October 2nd, 2008
Boston Legal is a huge time hog
September 30th, 2008
Sex, fun and games
September 28th, 2008
Thoughts of a lonesome writer on a Thursday cocktail
September 25th, 2008
Eccentric does not mean genius
September 23rd, 2008
The farce of parliamentary election
September 22nd, 2008
Stock markets collapsing - buy buy buy buy!
September 18th, 2008
Dressing funnily
September 17th, 2008
The world is actually fair
September 15th, 2008
Hug a developer
September 12th, 2008
Who killed Amanda Palmer
September 9th, 2008
Spore is better than fucking
September 7th, 2008
Computers used to work in the 90's
September 4th, 2008
Importance of good office equipment
September 2nd, 2008
Giving people space
September 1st, 2008
Getting readership
August 28th, 2008
Dieting with results in a week
August 25th, 2008
Typing versus shouting
August 22nd, 2008
Plans and scams
August 19th, 2008
Divination by coin
August 15th, 2008
True love
August 13th, 2008
Writing
August 11th, 2008
WebDAV, girlfriends and linux
August 6th, 2008
A physics analogy to anger
August 1st, 2008
Perl will solve your bug!
July 31st, 2008
The fabled, but lazy, day
July 30th, 2008
Coding, farting and bicycles
July 27th, 2008
And that's how holidays destroyed the world.
July 25th, 2008
Still an idiot, but with a sexy desktopo now
July 22nd, 2008
I'm an idiot, but a merry one
July 20th, 2008
Dude! The blog is read :O
July 18th, 2008
Setting up a server only takes a while
July 15th, 2008
How life sucks the fun out of all
July 11th, 2008
<insert deity> bless opensource
July 9th, 2008
PhP conference
July 7th, 2008
We love the bugzilla and she loves us
July 4th, 2008
The modern decadent
July 1st, 2008
Firefox 3.0 release party
June 26th, 2008
Blogres is done with
June 23rd, 2008
Blogres 2k8
June 21st, 2008
Victims of modern education
June 18th, 2008
The pain of a dead domain
June 15th, 2008
Whiteboard of mind
June 3rd, 2008
IE6 can kiss my ass!
May 30th, 2008
The carnival the carnival
May 29th, 2008
IPSC 2k8
May 26th, 2008
Procrastination
May 24th, 2008
Bewbs
May 21st, 2008
Lord of the dance
May 18th, 2008
Blood fetish
May 16th, 2008
The Dresden Dolls Insanity
May 13th, 2008
Fart fetish
May 11th, 2008
Code monkeys
May 8th, 2008
The chronicles of a dead blog
May 6th, 2008
Fool of an april
April 2nd, 2008
Knowing how to fight can be very helpful
March 30th, 2008
A random deterministic process
March 29th, 2008
My brain is a vector
March 26th, 2008
Blogorola's "Hot'a'lot"
March 18th, 2008
Multiculture
March 13th, 2008
Emotions
March 10th, 2008
Chatslaves
March 6th, 2008
Heading for dystopia or utopia?
March 2nd, 2008
Death of Drnovšek
February 23rd, 2008
Girflriend doesn't mind my love affair
February 19th, 2008
War on scientology
February 11th, 2008
Life is simpler without love
February 8th, 2008
Short penis
February 5th, 2008
The Angry Walk
January 29th, 2008
Public sex
January 27th, 2008
Appaling customer service at Harvey Norman
January 19th, 2008
Opensource delight
January 16th, 2008
Exams and revolutions
January 14th, 2008
Blogolicious envy
January 7th, 2008
Death of Lestat
January 2nd, 2008
Entaggling the word
December 31st, 2007
Dreamhosting
December 29th, 2007
Workaholic
December 24th, 2007
In sickness and in death
December 19th, 2007
Maths and poetry
December 9th, 2007
Punk
December 4th, 2007
Autumn
November 7th, 2007
Jesen
November 7th, 2007
Living statue
November 1st, 2007
First week
October 7th, 2007
Prvi teden
October 7th, 2007
London 7
September 29th, 2007
London 6
September 27th, 2007
London 5
September 26th, 2007
London 4
September 23rd, 2007
London 3
September 21st, 2007
London 3
September 21st, 2007
London 1
September 19th, 2007
London 1
September 19th, 2007
London 2
September 19th, 2007
London 2
September 19th, 2007
Fitnes
September 3rd, 2007
Gym
September 3rd, 2007
Povzetki in poljubÄki
August 21st, 2007
Summaries and kisses
August 21st, 2007
Živi!
August 7th, 2007
She lives!
August 7th, 2007
Dane Cook
July 30th, 2007
Dane Cook
July 30th, 2007
Medievalness
July 23rd, 2007
Srednjeveškost
July 23rd, 2007
Blade hunter
July 20th, 2007
Propelovilec
July 20th, 2007
Modern covers
July 13th, 2007
Moderne priredbe
July 13th, 2007
Shiny box
July 12th, 2007
SvetleÄa Å¡katla
July 12th, 2007
Bookses
July 9th, 2007
Knjigce
July 9th, 2007
Cyber Bullying
July 4th, 2007
Spletno nasilje
July 4th, 2007
Dusty death
July 2nd, 2007
Prašna smrt
July 2nd, 2007
Internet drama
June 27th, 2007
Internet drama
June 27th, 2007
And we're done
June 23rd, 2007
In smo opravili
June 23rd, 2007
Dissatisfactions
June 19th, 2007
Nezadovoljstva
June 19th, 2007
Gertrude
June 14th, 2007
Gertrude
June 14th, 2007
Drugi Edo
June 11th, 2007
The Second Eddy
June 11th, 2007
The Willows
June 11th, 2007
The Willows
June 11th, 2007
Penguin species
June 10th, 2007
Pingvinske vrste
June 10th, 2007
Å tudirati Mlade zdravnike
June 6th, 2007
Studying scrubs
June 6th, 2007
Deter heat
May 30th, 2007
Odstrani vroÄino
May 30th, 2007
Coffee interface
May 30th, 2007
17. Maj
May 28th, 2007
17. maj
May 28th, 2007
Memnoch the Devil
May 26th, 2007
Memnoch the Devil
May 26th, 2007
Licenca
May 22nd, 2007
LIcense
May 22nd, 2007
Doggy?
May 19th, 2007
Kuža?
May 19th, 2007
Je Suis Jalous
May 17th, 2007
Je Suis Jalouse
May 17th, 2007
Extortion
May 16th, 2007
Izsilstvo
May 16th, 2007
Battles
May 15th, 2007
Bitke
May 15th, 2007
Holly fuck
May 10th, 2007
Sveto govno
May 10th, 2007
Avstralci in mucke
May 9th, 2007
Aussies and kitties
May 9th, 2007
Pwnage?
May 8th, 2007
Pwnage?
May 8th, 2007
Naga Gora
April 30th, 2007
Nude mountain
April 30th, 2007
ÄŒaj
April 27th, 2007
Tea
April 27th, 2007
Reality?
April 24th, 2007
ResniÄnost?
April 24th, 2007
Fuck nonwhites?
April 20th, 2007
Bedroom golf
April 18th, 2007
Busy busy busy
April 17th, 2007
Busy busy busy
April 17th, 2007
Drevo za dva
April 12th, 2007
Tree for Two
April 12th, 2007
Stroj smo mi
April 11th, 2007
The Machine is us
April 11th, 2007
Reši Freda
April 10th, 2007
Save Fred
April 10th, 2007
New Phone
April 9th, 2007
Nov telefon
April 9th, 2007
ÄŒudna polka
April 5th, 2007
Weird polka
April 5th, 2007
Size and scale
April 4th, 2007
Velikost in razmerje
April 4th, 2007
Card projectile
April 3rd, 2007
Kartni izstrelek
April 3rd, 2007
Paper Cthulhu
April 1st, 2007
Papirnati Cthulhu
April 1st, 2007
Splash pages
March 31st, 2007
Vstopne strani
March 31st, 2007
Carovnik iz Oza
March 28th, 2007
The Wizard of Oz
March 28th, 2007
Pesem in ples
March 27th, 2007
Song and dance
March 27th, 2007
Kit na nebu
March 25th, 2007
Whale in the sky
March 25th, 2007
Papir ali elektroni
March 20th, 2007
Paper or electrons
March 20th, 2007
Sneg
March 19th, 2007
Snow
March 19th, 2007
Malo deljenja
March 14th, 2007
Some sharing
March 14th, 2007
Bob
March 13th, 2007
Bob
March 13th, 2007
Tabu
March 12th, 2007
Tabu
March 12th, 2007
Droge!
March 10th, 2007
Drugs!
March 10th, 2007
Nekaj fotk
March 8th, 2007
Some photos
March 8th, 2007
Loremo
March 7th, 2007
The Loremo
March 7th, 2007
More steampunk
March 2nd, 2007
Vec steampunka
March 2nd, 2007
Kernel?
March 1st, 2007
Kernel?
March 1st, 2007
Steampunk keyboard
February 28th, 2007
Steampunk tipkovnica
February 28th, 2007
Art of cool
February 26th, 2007
Kissybook
February 26th, 2007
Kissybook
February 26th, 2007
Pica je grozna
February 26th, 2007
Pizza is scary
February 26th, 2007
Zakon umetnost
February 26th, 2007
Video blog
February 18th, 2007
Video blogging
February 18th, 2007
Valentine's day
February 14th, 2007
Valentinovo
February 14th, 2007
Pobegla cerkev
February 13th, 2007
Run away church
February 13th, 2007
Heaven is full fool
February 6th, 2007
Nebesa so polna!
February 6th, 2007
Seating of the future
February 4th, 2007
Sedisce prihodnosti
February 4th, 2007
Viri have it hard
February 3rd, 2007
Virusom je tezko
February 3rd, 2007
Nepomembnost
February 2nd, 2007
Significance
February 2nd, 2007
Tsunami freeze
January 31st, 2007
Zmrznjen tsunami
January 31st, 2007
Backstabbing
January 30th, 2007
Izdajstvo
January 30th, 2007
Inventar
January 27th, 2007
Inventory
January 27th, 2007
3D renderations
January 25th, 2007
3D slike
January 25th, 2007
Bored?
January 25th, 2007
Dolgcas?
January 25th, 2007
Secrets
January 24th, 2007
Skrivnosti
January 24th, 2007
Design
January 23rd, 2007
Izgled
January 23rd, 2007
Kip(i)
January 21st, 2007
Statue(s)
January 21st, 2007
Samurai
January 20th, 2007
Samurai
January 20th, 2007
Napadajoca hrana
January 19th, 2007
Attacking food!
January 19th, 2007
Raziskava
January 18th, 2007
Research
January 18th, 2007
Pen chandellier?
January 15th, 2007
Pisalni lestenec?
January 15th, 2007
Black Sheep
January 13th, 2007
Crne ovce
January 13th, 2007
Normala
January 10th, 2007
Propan
January 10th, 2007
Propane
January 10th, 2007
The norm
January 10th, 2007
Posodobitve
January 8th, 2007
Updates
January 8th, 2007
Zombie death
January 8th, 2007
Zombi smrt
January 8th, 2007
Ecology in style
January 7th, 2007
Ekologija v stilu
January 7th, 2007
Ideas
January 7th, 2007
Ideje
January 7th, 2007
KDE 4.0
January 5th, 2007
KDE 4.0
January 5th, 2007
Test mark 2
January 5th, 2007
Testin'
January 4th, 2007
Neumna vsebina
January 3rd, 2007
Silly content
January 3rd, 2007
Boobies
December 30th, 2006
Cookies
December 25th, 2006
Piskoti
December 25th, 2006
Cold
December 14th, 2006
Mraz
December 14th, 2006
Now&Anon
November 28th, 2006
Takoj&Zdaj
November 28th, 2006
Pen
November 23rd, 2006
Pisalo
November 23rd, 2006
Intuos
November 20th, 2006
Intuos
November 20th, 2006
Fear and Loathing
November 19th, 2006
Strah in trepet
November 19th, 2006
Hobby
November 16th, 2006
Hobi
November 16th, 2006
Napredek?
November 15th, 2006
Progress?
November 15th, 2006
15% manj
November 12th, 2006
15% off
November 12th, 2006
Impulzivnost
November 11th, 2006
Impulse day
November 11th, 2006
Lepo
November 10th, 2006
Pretty
November 10th, 2006
Jecanje
November 8th, 2006
Slurring
November 8th, 2006
Ah sranje
November 7th, 2006
Oh shit
November 7th, 2006
Opa
November 5th, 2006
Wow
November 5th, 2006
Ironija
November 2nd, 2006
Irony
November 2nd, 2006
Trebuchet
November 1st, 2006
Trebuchet
November 1st, 2006
NaNoWriMo
October 29th, 2006
NaNoWriMo
October 29th, 2006
October
October 17th, 2006
Oktober
October 17th, 2006
GledaliÅ¡Äe
October 2nd, 2006
Playhouse
October 2nd, 2006
Moods
September 24th, 2006
Razpoloženja
September 24th, 2006
Art
September 15th, 2006
Umetnost
September 15th, 2006
Pirati
August 22nd, 2006
Pyrates
August 22nd, 2006
Cthulhu
August 14th, 2006
Cthulhu
August 14th, 2006
©kodljivo?
August 9th, 2006
Harmless?
August 9th, 2006
Brushes
August 4th, 2006
Èopièi
August 4th, 2006
Holy Crap
July 31st, 2006
Kristusove gate
July 31st, 2006
©topanje
July 17th, 2006
Hitchhiking
July 17th, 2006
Sleep
July 12th, 2006
Spanje
July 12th, 2006
Sketches of day
July 8th, 2006
Skice dneva
July 8th, 2006
ÄŒasovov
June 26th, 2006
Timenessness
June 26th, 2006
Opa
June 10th, 2006
Whoa
June 10th, 2006
Daily sketch #1
June 7th, 2006
Dnevna skica st1
June 7th, 2006
Sketches
June 7th, 2006
Skice
June 7th, 2006
Stvarce
May 31st, 2006
Thingies
May 31st, 2006
Empires
May 26th, 2006
Imperiji
May 26th, 2006
IPSC 2006
May 18th, 2006
IPSC 2006
May 18th, 2006
Comics and books
May 14th, 2006
Stripi in knjige
May 14th, 2006
Del 1
May 12th, 2006
Issue 1
May 12th, 2006
Barvanje
May 7th, 2006
Colouring
May 7th, 2006
V
May 3rd, 2006
V
May 3rd, 2006
O pingvinih in OS-ih
May 1st, 2006
Of penguins and OSes
May 1st, 2006
Ko je prost dan zaposlen
April 27th, 2006
When a free day is busy
April 27th, 2006
Going strong
April 24th, 2006
Se dogaja
April 24th, 2006
Instalacija
April 21st, 2006
Site set up
April 21st, 2006