84 Posts

Development

InfoQ interview - Go Language at 13 Years

InfoQ interview - Go Language at 13 Years

I had the pleasure of speaking with Olimpiu Pop from InfoQ about the Go language and community. …

Gophers Say GopherCon Edition

Gophers Say GopherCon Edition

Go Time panelists Natalie & Jon join forces with Go Team members Steve Francia, Katie …

Modern Enterprise Applications with Go - Go Day 2021

Modern Enterprise Applications with Go - Go Day 2021

Go, the language of cloud infrastructure, is maturing into the language of modern enterprise …

Google Cloud Next 2021 - Modern Enterprise Applications with Go

Google Cloud Next 2021 - Modern Enterprise Applications with Go

Over the past couple of years, Go has matured to a complete end-to-end offering with seamless …

Break things on purpose podcast

Break things on purpose podcast

I had the privilage of sitting down with my friend Jason Yee as a guest on his podcast. Listen …

Grokking Go.dev - Go Time Podcast

Grokking Go.dev - Go Time Podcast

I had the privilage of joining my coworker Julie Qiu as we talked with our friends Carmen, Mat …

The Legacy of Go

The Legacy of Go

This presentation was developed for GoLab in Firenze Italy and delivered as the closing keynote …

What Should a Modern Practical Programming Language Look Like

What Should a Modern Practical Programming Language Look Like

Keynote delivered at The Landing Festival – Berlin. This presentation describes the many …

Go – On The Shoulders of Giants

Go – On The Shoulders of Giants

This presentation was developed for Curry On and delivered as the closing keynote of the …

演讲:Go, a global phenomenon (英语演讲)

演讲:Go, a global phenomenon (英语演讲)

This presentation was given in 深圳市 China, July 2018 as part of the InfoQ ArchSummit conference. …

New Go Branding Strategy

New Go Branding Strategy

I joined the GoTime podcast and told them EVERYTHING about Go’s new branding strategy (and …

State of the Go Nation – Gophercon Brasil 2017

State of the Go Nation – Gophercon Brasil 2017

This talk is an overview of the entire Go project. It covers “what we’ve done”, “why we did it” …

State of the Go Nation – Gotham Go 2017

State of the Go Nation – Gotham Go 2017

An overview of the entire Go project. It covers “what we’ve done”, “why we did it” and “where …

State Of The Gopher Nation - Golang UK 2017

State Of The Gopher Nation - Golang UK 2017

I am at GolangUK in London, having just finished giving the opening keynote. I was a bit more …

How to Contribute to Go

How to Contribute to Go

I wrote this presentation with Jessie Frazelle. She made it look very nice and delivered it at …

Life, Liberty, and Golang

Life, Liberty, and Golang

A semi-autobiographical presentation given to the winners of Google’s 2017 Code-in …

Building an Awesome CLI App in Go – OSCON 2017

Building an Awesome CLI App in Go – OSCON 2017

A workshop written and delivered by Steve Francia and Ashley McNamara at OSCON 2017 outlining …

Building an Awesome Cli App in Go – Craft

Building an Awesome Cli App in Go – Craft

A workshop written and delivered by Steve Francia and Ashley McNamara at CRAFT 2017 outlining …

Go Developer Survey

Go Developer Survey

I joined GoTime to talk about the results of the 2016 Go Developer Survey and other interesting …

Hugo goes global

Hugo goes global

Hugo is going Global! Hugo 0.17, released today, is our best and fastest release ever! Hugo …

I’m joining the Go team at Google

I’m joining the Go team at Google

I am honored to share that I have joined Google as a member of the Go team and will be …

7 common mistakes in Go – GopherFest 2015

7 common mistakes in Go – GopherFest 2015

Given at GopherFest 2015. This is an updated version of the talk I gave in NYC Nov 14 at …

What Every Open Source Project Needs

What Every Open Source Project Needs

In the last few years open source has transformed the software industry. From Android to …

How To Be A Good Open Source Community Member

How To Be A Good Open Source Community Member

A friend of mine who is a very talented writer recently became intrigued with open source and …

7 Common mistakes in Go and when to avoid them – Gotham Go

7 Common mistakes in Go and when to avoid them – Gotham Go

Not a generic list of programming mistakes, these are the lessons I wish I learned earlier …

Hugo Summer 2014 Update

Hugo Summer 2014 Update

Hugo, the fast and flexible static site generator, is really coming of age. I wanted to give a …

Evangelism is NOT Sales

Evangelism is NOT Sales

I recently had a discussion with a CFO of a technology company. We were meeting because he is …

Go for Object Oriented Programmers

Go for Object Oriented Programmers

If you’re a OO programmer, especially one with a background with dynamic languages and are curious about go then this talk is for you. We will cover everything you need to know to leverage your existing skills and quickly start coding in golang

Using MongoDB with Go and mgo

Using MongoDB with Go and mgo

This presentation will give developers an introduction and practical experience of using MongoDB with the Go language. MongoDB Chief Developer Advocate & Gopher Steve Francia presents plainly what you need to know about using MongoDB with Go.

Getting Started with Go

Getting Started with Go

This presentation will walk you through the steps needed to get started with Go.

Pointers vs References

Pointers vs References

Some languages including C, C++ support pointers. Other languages including C++, Java, Python, …

Is Go an Object Oriented language?

Is Go an Object Oriented language?

To truly understand what it means to be ‘object-oriented’ you need to look back at the …

9 MongoDB 2.6 Drivers Released

9 MongoDB 2.6 Drivers Released

I’m pleased to announce the coordinated release of drivers in 9 languages in preparation for …

Cross Compiling with Go

Cross Compiling with Go

One of the great features of golang is that you can compile executables for many different …

Why I use spf13-vim

Why I use spf13-vim

a completely cross platform distribution of vim plugins and resources for Vim, GVim and MacVim stays true to it's vim roots while adding modern features including a plugin management system, a curated plugin set with customized configuration, advanced autocomplete, tags, support for dozens of languages and much more.

A modern CLI Commander for go

A modern CLI Commander for go

Cobra is a commander providing a simple interface to create powerful modern CLI interfaces similar to git & go tools. In addition to providing an iterface, Cobra simultaneously provides a controller to organize your application code.

Refactoring with go fmt

Refactoring with go fmt

using go fmt to quickly refactor your code

Building Modern Web Applications

Building Modern Web Applications

I gave this presentation to a packed house at DevCon5 in NYC July 24th. DevCon5 is a web …

MongoDB and PHP Webinar

MongoDB and PHP Webinar

Workshop on MongoDB and PHP

Hugo: A fast and flexible static site generator built in GoLang

Hugo: A fast and flexible static site generator built in GoLang

Hugo Website Hugo is a static site generator written in Go. It is optimized for speed, easy …

Nitro : A quick and simple profiler for golang

Nitro : A quick and simple profiler for golang

Nitro is a quick and easy performance analyzer library for golang. It is useful for comparing …

MongoDB Driver days hackathon round up

MongoDB Driver days hackathon round up

A round up of projects created during the driver days hack day by the 10gen drivers team focused on the MongoDB user experience.

How to deliver a great conference tutorial

How to deliver a great conference tutorial

4 secrets I used to give the most popular presentation in the history of OSCON.

Getting Started with MongoDB and PHP

Getting Started with MongoDB and PHP

The first in a series of posts on MongoDB and PHP that will both explain why you should use MongoDB and teach you how.

NoSQL databases and Managing Big Data

NoSQL databases and Managing Big Data

A review of the various NoSQL databases including MongoDB, cassandra, redis and how they handle big data.

spf13-vim : Steve Francia's Vim Distribution

spf13-vim : Steve Francia's Vim Distribution

spf13-vim is a distribution of vim plugins and resources for Vim, Gvim and MacVim. It is a good …

spf13-vim 3.0 release and new website

spf13-vim 3.0 release and new website

spf13-vim is a cross platform distribution of vim plugins and resources for Vim, GVim and MacVim.

Getting started with Drupal and MongoDB

Getting started with Drupal and MongoDB

Drupal is the standard in content management systems. MongoDB enables high performance Drupal. Get started with a MongoDB backed Drupal.

MongoDB and Hadoop

MongoDB and Hadoop

Learn how to integrate MongoDB with Hadoop for large-scale distributed data processing.

MongoDB and PHP, The Book

MongoDB and PHP, The Book

I wrote a book. It is published by O’Reilly, and available now on Amazon, O’Reilly Media and a …

MongoDB for Genealogy at RootsTech 2012

MongoDB for Genealogy at RootsTech 2012

After an enjoyable time at the SORT conference in 2011 I was invited to come back to SLC to …

Backup, Replication and Disaster Recovery

Backup, Replication and Disaster Recovery

How to go about creating better backups through replication and snapshots and how to ensure that your infrastructure has a solid disaster recovery plan.

Hybrid MongoDB / SQL Applications

Hybrid MongoDB / SQL Applications

MongoDB is often used alongside a relational database such as Oracle or MySQL. It is often …

Building your First app with MongoDB at MongoSV 2011

Building your First app with MongoDB at MongoSV 2011

10gen had our flagship conference in Silicon Valley. I gave an introductory presentation at the …

E-commerce in LA

E-commerce in LA

This week I joined a few of my co-workers down in LA. We met with a few companies and ran the …

Easy bash scripting with shflags

Easy bash scripting with shflags

One of the most frustrating things about bash scripts is how challenging it is to create unix …

Creating a Symfony2 Console Command

Creating a Symfony2 Console Command

One of the weaknesses of PHP as a languages has always been it’s ability to write proper …

Blending Mongo and RDBMS for ecommerce

Blending Mongo and RDBMS for ecommerce

Justin Hileman and I presented at MongoNYC 2011 to a packed house. Our presentation outlines …

The Browser as an application platform

The Browser as an application platform

With Google launching their chrome book is significant as it reflects a substantial shift in …

Creating your own Symfony2 Bundle

Creating your own Symfony2 Bundle

Symfony2 is a great web framework. OpenSky is built on this framework and we are one of the …

Release early, release often to minimize risk

Release early, release often to minimize risk

Release Cycles have been debated for the last 30 years and will certainly be for the next 30. …

My Favorite Rands Posts

My Favorite Rands Posts

If you don’t know Rands (real name Michael Lopp), you should. His blog is full of excellent …

Augmenting RDBMS with NoSQL for e-commerce

Augmenting RDBMS with NoSQL for e-commerce

Justin Hileman and I gave a presentation on “Augmenting RDBMS with NoSQL for e-commerce” at the …

Getting Started with Symfony2

Getting Started with Symfony2

In a follow up to my popular post on Symfony2, the open source PHP framework we use at OpenSky, …

On Symfony2

On Symfony2

Symfony2 is the latest brainchild of Fabien Potencier.

The perfect .vimrc vim config file

The perfect .vimrc vim config file

I have spent the last few years tweaking and refining my VIM configuration. This is the …

Software Development's Magic Triangle

Software Development's Magic Triangle

There’s an old adage “Fast, Cheap, Good; Pick Two”. This situation is called a magic triangle. …

MongoDB & Ecommerce : A Perfect Combination

MongoDB & Ecommerce : A Perfect Combination

Last night I gave a presentation on MongoDB & Ecommerce. OpenSky is the first company to …

16 lessons from 16 years

16 lessons from 16 years

16 lessons learned I learned from my first 16 years working in the technology industry.

Ultimate Vim Config

Ultimate Vim Config

I have spent the last few years tweaking and refining my VIM configuration until I had the …

The Golden Hammer

The Golden Hammer

Every so often a “new” technology catches on. Right now it’s nosql databases. A couple years …

NoSQL Databases

NoSQL Databases

Amazon, Digg, Facebook, LinkedIn, Twitter all started on sql databases (all but Amazon on …

Human readable du sorted by size

Human readable du sorted by size

du is the *nix command for disk usage. It tells you how much space everything in the given …

Using the right keys

Using the right keys

Today I was visiting a friends office and like many offices in NYC they have a shared bathroom …

REST vs SOAP, the difference between soap and rest

REST vs SOAP, the difference between soap and rest

What's SOAP? What's REST? and what the differences are between them with recommendations of when to use REST versus SOAP

My Online Business Card (Vcard)

My Online Business Card (Vcard)

I wanted to polish up my javascript coding so I decided that the best way to do that was with a …

7 security practices you need to follow

7 security practices you need to follow

Some of this may seem like a broken record, yet every single time you hear about a bank losing …

Secure Automated, Key Based SSH

Secure Automated, Key Based SSH

SSH is great and secure… Unless you need to automate it. Then it sucks because your only …

Installing Git on a Shared Host

Installing Git on a Shared Host

Git is a fantastic tool and is very useful for deployment. If you can’t install git system wide …

Vim Plugins: NERD Commenter

Vim Plugins: NERD Commenter

The NERD Commenter is an indispensable tool when programming in VIM. It understands like a …

Mastering the Command Line

Mastering the Command Line

If you use *nix, no doubt you’ve spent some time on the command line. Here are a few of the …

Setting up Subversion with multiple access methods

Setting up Subversion with multiple access methods

One thing that makes subversion such a powerful revision system is it’s ability to permit …

How RIM handed the mobile market over to Apple

How RIM handed the mobile market over to Apple

Just because you are the market leader doesn't mean you will stay the market leader. A lesson on competition given by Apple to RIM.

Using SVK to Increase Productivity

Using SVK to Increase Productivity

After subversion but before Git there was SVK. If you are stuck using subversion do yourself a favor and use svk.