PIGNOSE | 58a8cf8 | 2018-04-05 05:24:08 +0900 | [diff] [blame] | 1 | This page links to blog posts, videos, and slide decks discussing moving a code base to Go from some other language. |
Damian Gryski | c695a36 | 2016-03-27 08:13:05 +0200 | [diff] [blame] | 2 | |
| 3 | # Python |
Damian Gryski | b4082de | 2016-10-20 16:16:33 +0200 | [diff] [blame] | 4 | * [Disqus: Trying out this Go thing](https://blog.disqus.com/trying-out-this-go-thing) |
Damian Gryski | dc5f732 | 2016-04-01 00:22:50 +0200 | [diff] [blame] | 5 | * [Rackspace: Making OpenStack-Powered Rackspace Cloud Files Buzz With Hummingbird](https://blog.rackspace.com/making-openstack-powered-rackspace-cloud-files-buzz-with-hummingbird/) |
Reza Kamalifard | 4f7ac68 | 2018-02-13 20:20:12 +0330 | [diff] [blame] | 6 | * [Repustate: From Python to Go: migrating our entire API](https://www.repustate.com/blog/migrating-entire-api-go-python/) |
Abhishek Kumar Singh | 03d505f | 2017-04-19 21:03:59 +0530 | [diff] [blame] | 7 | * [Spacemonkey: Python to Go](https://www.spacemonkey.com/blog/posts/go-space-monkey) |
| 8 | * [Why I went from Python to Go (and not node.js)](http://jordanorelli.com/post/31533769172/why-i-went-from-python-to-go-and-not-nodejs) |
| 9 | * [How to Convince Your Company to Go With Golang](https://sendgrid.com/blog/convince-company-go-golang/) |
Muhammad Aldo Firmansyah | 18d917c | 2017-04-07 15:42:01 +0700 | [diff] [blame] | 10 | * [5 Reasons Why We switched from Python To Go](https://medium.com/@tigranbs/5-reasons-why-we-switched-from-python-to-go-4414d5f42690) |
Mohanarangan Muthukumar | 7a489d3 | 2018-02-05 10:12:17 +0530 | [diff] [blame] | 11 | * [Stream: Why we switched from Python to Go](https://getstream.io/blog/switched-python-go) |
Damian Gryski | a8d68b7 | 2018-02-22 13:12:22 -0800 | [diff] [blame] | 12 | * [Code Migration in Production: Rewriting the Sharding Layer of Uber’s Schemaless Datastore](https://eng.uber.com/schemaless-rewrite/) |
Ben Hoyt | f81b408 | 2018-09-25 12:05:44 -0400 | [diff] [blame] | 13 | * [Learning Go by porting a medium-sized web backend from Python](https://benhoyt.com/writings/learning-go/) |
Damian Gryski | c695a36 | 2016-03-27 08:13:05 +0200 | [diff] [blame] | 14 | |
| 15 | # Node |
| 16 | |
Mohanarangan Muthukumar | 9d1d114 | 2016-03-27 11:46:48 +0530 | [diff] [blame] | 17 | * [Digg](https://medium.com/@theflapjack103/the-way-of-the-gopher-6693db15ae1f#.yw5lk8t25) |
Mohanarangan Muthukumar | a3ca0e9 | 2016-05-17 19:10:43 +0530 | [diff] [blame] | 18 | * [Uber](https://www.infoq.com/articles/podcast-matt-ranney) (audio) |
Krzysztof Góralski | dc7d0b9 | 2016-11-19 10:42:04 +0100 | [diff] [blame] | 19 | * [Apex/TJ Holowaychuk](https://medium.com/@tjholowaychuk/farewell-node-js-4ba9e7f3e52b#.3hjxf6pbp) |
Bo-Yi Wu | 4362228 | 2017-02-13 14:10:20 +0800 | [diff] [blame] | 20 | * [ScaleDrone migrated all websocket servers from Node.js to Go](http://blog.scaledrone.com/posts/nodejs-to-go) |
Muhammad Aldo Firmansyah | 92d2671 | 2016-11-21 17:05:53 +0700 | [diff] [blame] | 21 | * [From Node.js To Go, Why One Startup Made The Switch](http://thenewstack.io/from-node-js-to-go-why-one-startup-made-the-switch/) |
| 22 | * [Why did Koding switch from Node.js to Go?](https://www.quora.com/Why-did-Koding-switch-from-Node-js-to-Go) |
| 23 | * [Letting Go of Node.js](http://blog.davebalmer.com/letting-go-of-node-js/) |
| 24 | * [Our Experience with Golang](https://www.upguard.com/blog/our-experience-with-golang) |
| 25 | * [Interview with Steve Kaliski, CTO of Bowery - The tech stack that powers Bowery, Moving from Node.js to Go lang and more](https://hashnode.com/post/interview-with-steve-kaliski-cto-of-bowery-the-tech-stack-that-powers-bowery-moving-from-nodejs-to-go-lang-and-more-ciibz8dmn001lj3xt468g5k78) |
Mohanarangan Muthukumar | 9d1d114 | 2016-03-27 11:46:48 +0530 | [diff] [blame] | 26 | |
Damian Gryski | c695a36 | 2016-03-27 08:13:05 +0200 | [diff] [blame] | 27 | # C++ |
| 28 | |
Mohanarangan Muthukumar | 3ff037a | 2016-03-27 11:49:16 +0530 | [diff] [blame] | 29 | * [dl.google.com](https://talks.golang.org/2013/oscon-dl.slide#1) by Brad Fitzpatrick |
Damian Gryski | 64f94c0 | 2016-03-27 09:51:03 +0200 | [diff] [blame] | 30 | * [Flywheel: Google's mobile image compression proxy](http://matt-welsh.blogspot.nl/2013/08/rewriting-large-production-system-in-go.html) |
Muhammad Aldo Firmansyah | 099ca7f | 2016-12-04 03:44:17 +0700 | [diff] [blame] | 31 | * [Fulfilling a Pikedream: the ups of downs of porting 50k lines of C++ to Go](https://togototo.wordpress.com/2015/03/07/fulfilling-a-pikedream-the-ups-of-downs-of-porting-50k-lines-of-c-to-go/) |
Mohanarangan Muthukumar | 3ff037a | 2016-03-27 11:49:16 +0530 | [diff] [blame] | 32 | |
Mohanarangan Muthukumar | 8531782 | 2016-03-27 11:50:48 +0530 | [diff] [blame] | 33 | # Ruby |
| 34 | |
Joel Bryan Juliano | ae51d45 | 2020-02-26 17:00:32 +0100 | [diff] [blame] | 35 | * [Book: From Ruby to Golang](https://leanpub.com/rb2go) |
Mohanarangan Muthukumar | 7897e00 | 2016-03-27 12:07:02 +0530 | [diff] [blame] | 36 | * [Toggl: Moving to Go](https://blog.toggl.com/2012/09/moving-to-go/) |
Mohanarangan Muthukumar | 8531782 | 2016-03-27 11:50:48 +0530 | [diff] [blame] | 37 | * [Iron.io: How We Went from 30 Servers to 2: Go](https://www.iron.io/how-we-went-from-30-servers-to-2-go/) |
Mohanarangan Muthukumar | 543303f | 2016-03-27 11:52:01 +0530 | [diff] [blame] | 38 | * [Parse: How We Moved Our API From Ruby to Go and Saved Our Sanity](http://blog.parse.com/learn/how-we-moved-our-api-from-ruby-to-go-and-saved-our-sanity/) |
Muhammad Aldo Firmansyah | d728b4b | 2016-11-21 16:30:08 +0700 | [diff] [blame] | 39 | * [Timehop: Why Timehop Chose Go to Replace Our Rails App](https://medium.com/building-timehop/why-timehop-chose-go-to-replace-our-rails-app-2855ea1912d) |
Muhammad Aldo Firmansyah | 83d92be | 2016-11-21 16:40:56 +0700 | [diff] [blame] | 40 | * [Scout App: FROM RUBY TO GO: A REWRITE FOR THE FUTURE](http://blog.scoutapp.com/articles/2014/09/25/from-ruby-to-go-a-rewrite-for-the-future) |
| 41 | * [Steven Yue: From Ruby's Grape to Martini in Go for Building Web API Server](http://stevenyue.com/blogs/from-rubys-grape-to-martini-in-go-for-building-web-api-server/) |
Muhammad Aldo Firmansyah | 9de761c | 2016-11-27 00:08:22 +0700 | [diff] [blame] | 42 | * [Soundcloud: Go at Soundcloud](https://developers.soundcloud.com/blog/go-at-soundcloud) |
Muhammad Aldo Firmansyah | 5404914 | 2016-12-03 17:00:59 +0700 | [diff] [blame] | 43 | * [My impressions of Go](http://blog.bensigelman.org/post/56158760736/golang-impressions) |
Muhammad Aldo Firmansyah | 099ca7f | 2016-12-04 03:44:17 +0700 | [diff] [blame] | 44 | * [Our Experience with Golang](https://www.upguard.com/blog/our-experience-with-golang) |
Damian Gryski | dde9aae | 2017-05-17 10:51:30 +0200 | [diff] [blame] | 45 | * [Rewriting our web analytics tracking infrastructure in Go](https://engineering.skroutz.gr/blog/rewriting-web-analytics-tracking-in-go/) |
Mohanarangan Muthukumar | 8531782 | 2016-03-27 11:50:48 +0530 | [diff] [blame] | 46 | |
Damian Gryski | c695a36 | 2016-03-27 08:13:05 +0200 | [diff] [blame] | 47 | # Java |
Bo-Yi Wu | 541c604 | 2017-02-13 13:51:54 +0800 | [diff] [blame] | 48 | * [From Java to Go](https://gquintana.github.io/2017/01/15/From-Java-to-Go.html) |
Muhammad Aldo Firmansyah | b93b8db | 2016-12-03 21:06:25 +0700 | [diff] [blame] | 49 | * [Why one developer switched from Java to Google Go](http://www.javaworld.com/article/2459212/scripting-jvm-languages/why-one-developer-switched-from-java-to-google-go.html) |
Muhammad Aldo Firmansyah | fe3e016 | 2016-12-03 16:55:53 +0700 | [diff] [blame] | 50 | |
Pascal Costanza | f7fb8a4 | 2020-01-06 16:10:50 +0100 | [diff] [blame] | 51 | # Common Lisp |
| 52 | * [A comparison of three programming languages for a full-fledged next-generation sequencing tool](https://bmcbioinformatics.biomedcentral.com/articles/10.1186/s12859-019-2903-5) |
| 53 | * [Comparing Ease of Programming in C++, Go, and Java for Implementing a Next-Generation Sequencing Tool](https://doi.org/10.1177%2F1176934319869015) |
| 54 | |
Muhammad Aldo Firmansyah | fe3e016 | 2016-12-03 16:55:53 +0700 | [diff] [blame] | 55 | # .NET |
| 56 | * [Why I Left the .NET Framework](http://blog.jonathanoliver.com/why-i-left-dot-net/) |
Damian Gryski | c695a36 | 2016-03-27 08:13:05 +0200 | [diff] [blame] | 57 | |
Damian Gryski | e02782a | 2016-12-08 13:32:21 +0100 | [diff] [blame] | 58 | # Scala |
Damian Gryski | 4845518 | 2017-01-24 22:38:04 +0100 | [diff] [blame] | 59 | * [CrowdStrike: Moving a Team from Scala to Go](http://jimplush.com/talk/2015/12/19/moving-a-team-from-scala-to-golang/) |
Damian Gryski | ce45bda | 2017-01-24 22:39:25 +0100 | [diff] [blame] | 60 | * [Making the move from Scala to Go, and why we’re not going back](https://movio.co/blog/migrate-Scala-to-Go/) |
Damian Gryski | e02782a | 2016-12-08 13:32:21 +0100 | [diff] [blame] | 61 | |
Yandry Pozo | 4abe214 | 2016-08-22 11:44:36 -0700 | [diff] [blame] | 62 | # PHP |
| 63 | * [Switching from PHP to Go (read comments section)](https://www.reddit.com/r/golang/comments/3wfnru/switching_from_php_to_go/) |
Muhammad Aldo Firmansyah | 83d92be | 2016-11-21 16:40:56 +0700 | [diff] [blame] | 64 | * [A Journey into Microservices](https://sudo.hailoapp.com/services/2015/03/09/journey-into-a-microservice-world-part-1/) |
| 65 | * [ARDUINO WEB ARCHITECTURE, BACK TO THE FUTURE](https://blog.arduino.cc/2015/04/16/arduino-web-architecture-back-to-the-future/) |
| 66 | * [Why I switched from PHP to Go](http://codepushr.com/why-i-switched-from-php-to-go/) |
| 67 | * [Marco switched to GoLang from PHP and Saved Money, why not you ?!](http://phpmagazine.net/2015/02/marco-switched-to-golang-from-php-and-saved-money-why-not-you.html) |
Damian Gryski | 263d789 | 2017-04-19 12:11:42 +0200 | [diff] [blame] | 68 | * [Moving from PHP (Laravel) to Go](https://dannyvankooten.com/laravel-to-golang/) |
Gemma Lynn | 3842d15 | 2018-03-30 22:23:28 +0200 | [diff] [blame] | 69 | * [When All You Have is an ElePHPant (Slides from ConFoo 2016)](https://www.ramblinations.com/when-all-you-have-is-an-elephpant) |
Muhammad Aldo Firmansyah | 4394dbd | 2016-11-21 16:16:54 +0700 | [diff] [blame] | 70 | |
Damian Gryski | 73bdf18 | 2019-02-23 09:28:46 -0800 | [diff] [blame] | 71 | # Perl |
| 72 | * [How We Migrate From Perl to Golang] |
| 73 | (https://medium.com/@alvintz.v/how-we-migrate-from-perl-to-golang-1520a4951392) |
| 74 | |
Muhammad Aldo Firmansyah | 9aa53f1 | 2016-12-02 22:10:13 +0700 | [diff] [blame] | 75 | # Haskell |
Damian Gryski | f784713 | 2019-02-23 09:26:34 -0800 | [diff] [blame] | 76 | * [Golang’s Real-time GC in Theory and Practice](https://blog.pusher.com/golangs-real-time-gc-in-theory-and-practice/) |
| 77 | |
| 78 | # Clojure |
| 79 | * [Rewriting an API Gateway Service from Clojure to Golang: AppsFlyer Experience Report](https://www.infoq.com/articles/api-gateway-clojure-golang) |