teleren/devto huggingface dataset:
A First Look at Google CloudÂ Storage
Tags: gcp, aws, exploration
Published: 2017-07-04 11:31:57

---
title: A First Look at Google CloudÂ Storage
published: true
description: Exploring Google CloudÂ Storage as a first time user
tags: GCP, AWS, Exploration
---
Note: This is a continuation of [my post](https://dev.to/kyle/a-first-look-at-google-cloudplatform) on exploring Google Cloud Platform. There is also a mirror of it on [my personal blog](https://kyle.io/2017/07/first-look-google-cloud-storage/).
____
*Storage* price wise, [S3](https://aws.amazon.com/s3/pricing/) and [GCS](https://cloud.google.com/storage/pricing) are mostly comparable, with a note that GCS bandwidth is more expensive, and you don't really get a choice of what rate you want to pay.

GCS Single Region is pretty much directly equivalent to standard S3, and Nearline is equivalent to S3 Infrequent Access, complete with per GB retrieval fees. Storage for both classes is cheaper than the respective S3 classes. Operation fees are exactly the same though.

There's two other storage classes though:

#### Multi-region Buckets
One major feature is multi-region buckets for $0.006/GB more. Presumably built to avoid incidents like [us-~~tirefire~~-east-1](http://tirefi.re/aws/) falling over and your buckets disappearing, it's a definite point if you need high availability (and are willing to trust that Google has proper HA).

Assuming single region stores 3 copies, I speculate that for the price, multi-region stores 2 copies in each region for a total of 4 copies. That (suspected) single additional copy would be why multi-region buckets are only a third more expensive.

#### Coldline
Coldline is a bit more interesting. As the equivalent of Glacier, it has one big advantage - quick retrieval times (on the order of a second), much better than Glacier. The downside is the fixed retrieval costs - $0.05/GB. Just comparing Coldline to Nearline means you shouldn't retrieve anything more than once every *2 years*(!) if you want to save money compared to Nearline. (Nearline is $0.01/GB, Coldline is $0.007/GB, so you save $0.003/GB/month going for Coldline.)

In comparison, Glacier has a number of retrieval speeds and corresponding retrieval pricing. Even Glacier's expedited requests (the most expensive option) cost 40% less than Coldline. (Interestingly, the bulk retrieval option works out to about 25% of retrieving from S3 IA, but takes in the order of 8-12 hours.)

Considering Glacier costs almost 50% less than Coldline, I really question the utility of Coldline. With the restore costs it only makes sense if you're storing archival data that doesn't need to be accessed for around 2 years. I think Glacier has a _much_ better handle on the expected use cases here.

I can see Nearline being used (and people having the expectation of immediate access), but the retrieval price of Coldline with no way to change that makes me _very_ leery of using it.
Hi, I'm JÃ zsef SebestyÃ©n
Tags: introductions
Published: 2017-07-06 07:26:08

---
title: Hi, I'm JÃ³zsef SebestyÃ©n
published: true
description: My introduction post
tags: introductions
cover_image: https://thepracticaldev.s3.amazonaws.com/i/ymgfd2j4nf3ucj6mp7zp.jpg
---

I have been coding for about 6 years.

You can find me on GitHub as [szalonna](https://github.com/szalonna)

I live in Budapest, Hungary.

I work for GE Life Sciences

I mostly program in these languages: Javascript, Typescript.

I am currently learning more about modern frontend thingies.

Nice to meet you.
Hi, I'm Abd Sani
Tags: introductions
Published: 2017-07-06 05:08:34

---
title: Hi, I'm Abd Sani
published: true
description: My introduction post
tags: introductions
---

I have been coding for 7 years.

You can find me on Twitter as [@abdsani](https://twitter.com/abdsani)

I mostly program in these languages: C#, Swift, Objective-C

I am currently learning more about iOS, Swift, backend development, microservices.

Nice to meet you.
Hi, I'm Leandro Nunes
Tags: introductions
Published: 2017-07-06 03:46:25

---
title: Hi, I'm Leandro Nunes
published: true
description: My introduction post
tags: introductions
---

I have been coding for 10+ years.

You can find me on Twitter as [@lnfnunes](https://twitter.com/lnfnunes)

I live in Brazil.

I work for CI&T

I mostly program in these languages: JavaScript,HTML,CSS,Swift,React-Native,Groovy.

I am currently learning more about Mobile and DevOps.

Nice to meet you.
Hi, I'm grassfedfarmboi
Tags: introductions
Published: 2017-07-06 00:39:05

---
title: Hi, I'm grassfedfarmboi
published: true
description: My intro
tags: introductions
---

I have been coding for 12 years.

You can find me on GitHub as [grassfedfarmboi](https://github.com/grassfedfarmboi)

I live in North America.

I work for no man.

I mostly code in Python, PHP/MySQL, and HTML5/CSS3.

I am currently learning more about tkinter and PostgreSQL.

Nice to meet you!
Hi, I'm Paolo
Tags: introductions
Published: 2017-07-05 22:59:15

---
title: Hi, I'm Paolo
published: true
description: My introduction post
tags: introductions
---

I have been coding for [4] years.

You can find me on Twitter as [@boompaoboom](https://twitter.com/boompaoboom)

I live in [Tempe, Arizona].

I work as an intern for [Intel]

I mostly program in these languages: [Java, C++, JavaScript].

I am currently learning more about [Full Stack Development].

Nice to meet you.
Stating The "Obvious"
Tags: discuss
Published: 2017-07-05 20:10:07

---
title: Stating The "Obvious"
published: true
tags: discuss
cover_image: https://thepracticaldev.s3.amazonaws.com/i/fo4czu9h7scjq5y58xb6.jpg
---

We've all slammed head-long into this scenario: we need to learn how to do something, and by asking, we are told, usually condescendingly, that everyone knows how to do it, and RT(F)M and LMGTFY. Yet, when we look it up, no one has ever written up a guide because "everyone knows how to do that."

So, we eventually just hack and stumble our way through the non-obvious stuff, feeling like idiots for not being born with this innate knowledge that everyone else seems to have.

And then, as we achieve that knowledge, we realize, the "everyone knows" is just imposter-syndrome-driven smokescreening.

So, let's help cut the cycle here! What is ONE thing in computer programming or IT that is generally considered *obvious*, but actually isn't? What do you wish someone would have told you about that subject back when you learned it?
Who is your programming hero?
Tags: discuss, braziliandevs
Published: 2017-07-05 19:59:05

---
title: Who is your programming hero?
published: true
cover_image: https://thepracticaldev.s3.amazonaws.com/i/hso7gaypmx0stmnpjo7f.jpg
tags: discuss, braziliandevs
---

The good guys at [The Changelog podcast](https://dev.to/changelog) ([Adam Stacoviak](http://adamstacoviak.com/) and [Jerod Santo](http://jerodsanto.net/)) used to ask this question to people the interview on the show. 

It's nice to see who are the heroes of people you really think are great programmers themselves. So, it would be nice to see who are this community's heroes. I'll start.

My programming hero is [Dennis Ritchie](https://en.wikipedia.org/wiki/Dennis_Ritchie). Not only for his technical skills but mainly for the huge contributions he made to the evolution of computer systems, software development and programming teaching and learning.

Let's go. Who is your programming hero?
Hi, I'm Vinicius Cainelli
Tags: introductions
Published: 2017-07-05 19:40:54

---
title: Hi, I'm Vinicius Cainelli
published: true
description: My introduction post
tags: introductions
---

![https://thepracticaldev.s3.amazonaws.com/i/63mqoszgd8fxh5vigfwv.gif](https://thepracticaldev.s3.amazonaws.com/i/63mqoszgd8fxh5vigfwv.gif)

I have been coding since 2007.

You can find me on GitHub as [vicainelli](https://github.com/vicainelli)

I live in SÃ£o Paulo / Brasil (yes, with **S**).

I work for [MandaÃª](https://mandae.com.br) and i am a founder of [MenuQR](http://menuqr.com)

I mostly program in these languages: PHP and JS.

I am currently learning more about DevOps and Web Performance.

Nice to meet you.
Hi, I'm JR Frazier
Tags: introductions
Published: 2017-07-05 19:38:50

---
title: Hi, I'm JR Frazier
published: true
description: My introduction post
tags: introductions
---

I have been coding for 8 months.

You can find me on Twitter as [@JR_Noble1](https://twitter.com/JR_Noble1)

I live in Northern VA.

I mostly program in these languages: HTML, CSS, JavaScript.

I am currently learning more about JavaScritp, React.js and CSS.

Nice to meet you!
Hi, I'm Julian 🌐
Tags: introductions
Published: 2017-07-05 14:31:41

---
title: Hi, I'm Julian ðŸŒ
published: true
description: My introduction post
tags: introductions
---

I have been coding for [14] years.

You can find me on Twitter as [@cfus89](https://twitter.com/cfus89)

I live in [Plantation].

I work for [Verio]

I mostly program in these languages: [C++,JAVA].

I am currently learning more about [DevOps].

Nice to meet you.
Hi, I'm Kara Kelley
Tags: introductions
Published: 2017-07-05 14:29:33

---
title: Hi, I'm Kara Kelley
published: true
description: My introduction post
tags: introductions
---

I have been (learning how to) code on my own for about one year so far.

You can find me on GitHub as [klkelley](https://github.com/klkelley)

I live in Cleveland, Ohio.

I am currently attending Dev Bootcamp - Chicago

I mostly program in these languages: Ruby

I am currently learning more about Ruby, Javascript, ROR, HTML/CSS, SQL  

Nice to meet you.
Hi, I'm Juan Carlos Vaca
Tags: introductions
Published: 2017-07-05 14:20:36

---
title: Hi, I'm Juan Carlos Vaca
published: true
description: My introduction post
tags: introductions
---

I have been coding for 14 years.

You can find me on Twitter as [@jvacaq](https://twitter.com/jvacaq)

I live in Quito Ecuador.

I work for the Best Company ever [Advance Latam](http://www.advlatam.com/).

I mostly program in these languages: Java, Javascript.

I am currently learning more about Node, Electron.

Nice to meet you.
Are You Feeling Lucky? 
Tags: discuss
Published: 2017-07-05 13:25:03

---
title: Are You Feeling Lucky? 
published: true
description: 
tags: discuss
cover_image: https://thepracticaldev.s3.amazonaws.com/i/zrbhm781xmkv38z1dbio.jpg
---
The past few days I've been struck with this lucky feeling.

As I scroll through my Twitter feed, I realise I'm following some amazing people who are brilliant at tech. And thanks to Twitter, I have access to all these great minds in one place! As they share their insights and links to articles, I get to read it all and learn from it.

Over on Slack, some local developers had the great idea to set up a group for local tech people to join. The early days in a startup can be difficult because the team is small, sometimes you need someone else in a similar position to yourself to bounce ideas off. Today I wanted someone to look at my plan for how I'm intending to structure our live Azure environment to make sure I wasn't doing anything crazy. A quick plea in the local tech Slack channel and less than an hour later, a complete stranger had offered their help and then spent almost an hour talking to me.

In all of these cases, the people are the most important part because without them the tools wouldn't be of as much use. However having access to these tools makes these connections infinitely easier. 

Developers often joke that they couldn't do their job without Google, but I think that list is definitely starting to grow.

What tools do you use on a daily basis that you wouldn't want to be without? Do they make your job easier or more enjoyable? Do they make you better at what you do? Are there any particular people you follow that you find inspirational?
The Goldilocks Contribution: How can someone find open source issues that challenge them just the right amount?
Tags: discuss
Published: 2017-07-05 13:16:54

---
title: "The Goldilocks Contribution: How can someone find open source issues that challenge them just the right amount?"
published: true
tags: discuss
---

In open source, how can someone find their Goldilocks issue  —  one that stretches their skillset just right  —  in the chasm between contributions that are too easy and too hard?

I'll use myself as an example. As someone who has already had a few pull requests merged, I find that issues labeled “beginner don't seem challenging enough to help me grow. However, some issues labeled "bug" or "feature" can be over my head. My goal in contributing to open source is to give back to programming communities I care about, but also to advance my technical skills.
Hi, I'm Yev
Tags: introductions
Published: 2017-07-05 12:19:34

---
title: Hi, I'm Yev
published: true
description: My introduction post
tags: introductions
---

I have been coding for one year.

You can find me on Twitter as [@effgen_uk](https://twitter.com/effgen_uk)

I live in Ukraine.

I work for myself.

I mostly program in these languages: JavaScript.

I am currently learning more about Ruby.

Nice to meet you.
Cheers!!!
Hi, I'm Jonathan
Tags: introductions
Published: 2017-07-05 11:52:43

---
title: Hi, I'm Jonathan
published: true
description: My introduction post
tags: introductions
---

My name is Jonathan and I'm from sweden. I have been working with information technology for almost 10 years now and loved every day of it.

I've been blogging for a while at https://www.mourtada.se about programming and related stuff. My motivation for blogging is foremost for my own learning but also for others interested in the same topics.

My intent for being here is to interact more with other developers.

You can find me on Twitter as [@jmourtada](https://twitter.com/jmourtada) and GitHub as [@jontem](https://github.com/Jontem).

I mostly program in these languages: Javascript, Typescript, C#, Clojure(newbie).

I constantly learning about programming. But now i'm mostly focusing on software design and functional programming.

Nice to meet you.
How to avoid comprehensive documentation/ over-documentation?
Tags: discuss, documentation, process
Published: 2017-07-05 10:45:21

---
title: How to avoid comprehensive documentation/ over-documentation?
published: true
tags: discuss, documentation, process
cover_image: http://jobrouter.com/sites/all/themes/corporateclean/images/button-documentation.jpg
---
Hi!
I think one of the teams I work in is overdocumenting things. It's we do waterfall-like iterations (I work on legacy systems and we do both change requests and production support), and there is some kind of document written at every stage of the project:
1) collecting requirements - the first document
2) after the project was accepted - another document with the same requirements but with more details
3) than high lever design for the system - general architecture overview
4) than more detailed system design up to the point of describing code
It's pretty exhausting and I was wondering how to do it in a smarter way.
What are in your opinion best ways to do project documentation?
Or how to talk the team into more collaborative documentation? I'm not sure how to start the stone soup here...

Any automation tips/ideas? 
For example, for the requirements, I'd like to create one document and extend it over time instead of writing the documentation from the scratch every time and duplicate the information...
Hi, I'm Dorian Amouroux
Tags: introductions
Published: 2017-07-05 09:23:30

---
title: Hi, I'm Dorian Amouroux
published: true
description: My introduction post
tags: introductions
---

I have been coding for 7 years.

You can find me on GitHub as [dorianamouroux](https://github.com/dorianamouroux)

I live in Amsterdam.

I work for The Things Network

I mostly program in these languages: Python, Javascript (front-end), Docker.

I am currently learning more about VueJs.

Nice to meet you.
Hi, I'm Brighton SaldaÃ±a
Tags: introductions
Published: 2017-07-05 03:18:11

---
title: Hi, I'm Brighton SaldaÃ±a
published: true
description: My introduction post
tags: introductions
---

I have been coding for [2] years.

You can find me on GitHub as [cbrghton](https://github.com/cbrghton)

I live in [Mexico City].

I work for [AlÏ€ste]

I mostly program in these languages: [Java, PHP, Python, SQL].

I am currently learning more about [C++].

Nice to meet you.

Jajaja nice presentation...
Hi, I'm Nick Bell
Tags: introductions
Published: 2017-07-05 01:41:43

---
title: Hi, I'm Nick Bell
published: true
description: My introduction post
tags: introductions
---

I have been coding for 5 years.

You can find me on Twitter as [@ni3t](https://twitter.com/ni3t)

I live in Atlanta.

I work for myself. 

I mostly program in these languages: Ruby and Javascript

I am currently learning more about Life

Nice to meet you.
Hi, I'm IRL
Tags: introductions
Published: 2017-07-05 00:42:09

---
title: Hi, I'm IRL
published: true
description: My introduction post
tags: introductions
---

I have been coding for 6 years.

You can find me on Twitter as [@techspp](https://twitter.com/techspp)

I live in Antalya, Turkey.

I work as a freelancer, entrepreneur

I mostly program in JS.

I am currently learning more about React Framework.

Nice to meet you.
Install Bootstrap with Bower
Tags: bootstrap, bower
Published: 2020-09-25 04:43:05

---
title: Install Bootstrap with Bower
published: true
date: 2017-07-05 00:00:00 UTC
tags: Bootstrap,Bower
canonical_url: https://www.loginradius.com/engineering/blog/how-to-use-bower-to-install-bootstrap/
---

Learn how the Bower package manager helps into quick components deploy and install Bootstrap using Bower

   
[Read On](https://www.loginradius.com/engineering/blog/how-to-use-bower-to-install-bootstrap/)
Hi, I'm Fernando Rivera
Tags: introductions
Published: 2017-07-04 21:55:04

---
title: Hi, I'm Fernando Rivera
published: true
description: My introduction post
tags: introductions
---

I have been coding for [number] years.

You can find me on Twitter as [@ferever2125](https://twitter.com/ferever2125)

I live in Choloma, Cortes, Honduras.

I work for ABMiners

I mostly program in these languages: [languages].

I am currently learning more about [topic].

Nice to meet you.
Day 15: Refactoring, Technical Debt and Automated Tests
Tags: automatedtests, refactoring, technicaldebt
Published: 2017-07-04 17:48:36

---
layout: post
title: "Day 15: Refactoring, Technical Debt and Automated Tests"
date: 2017-07-04 17:48:36
published: true
comments: true
canonical_url: "http://blog.12startupsin12months.in/2017/07/04/day-15-refactoring-technical-debt-and-automated-tests/"
tags: 
  - Refactoring
  - Technical Debt
  - Automated Tests
---

Today, was spent on refactoring my code and removing a lot of duplication and technical debt
and writing a shit load of automated tests. Elixir and Phoenix make writing tests very
straight forward. There isn't a lot of stuff to setup.

## Lessons, learnt
  - Write lots of automated tests, and have a CI run them. I did a post about
    [setting up Elixir with circleci a while ago](http://blog.12startupsin12months.in/2017/06/16/how-to-setup-ci-for-elixir-phoenix-using-circleci/)
    This has been such a life saver.
  - Don't worry too much about duplication early on in the project. This is something
    which [Sandi Metz talks a lot about](https://www.sandimetz.com/blog/2016/1/20/the-wrong-abstraction).
    If you come up with the wrong abstraction early on. You'll only dig yourself deeper into the mess.
  - Use tools to make your job easier. Elixir and Erlang have the awesome [dialyzer](https://github.com/jeremyjh/dialyxir)
    which analyzes your code and catches a lot of your bugs early on.

## Useful links
  - I started a blog called http://elixir.goodcode.in to share the interesting tidbits of elixir stuff.
    It already has a useful post: [How to run a chunk of code when your Elixir/Phoenix app starts](http://elixir.goodcode.in/2017/07/03/how-to-run-a-chunk-of-code-when-your-elixir-phoenix-app-starts/)
  - Dailyzer: https://github.com/jeremyjh/dialyxir
  - Sandi Metz Blog Post about [The Wrong Abstraction](https://www.sandimetz.com/blog/2016/1/20/the-wrong-abstraction)

## Questions Encountered
  - How to run stuff at startup the proper way in Elixir?
    *Blogged about it above.*
  - How to run dialyzer automatically in a CI on every push?
    *Haven't figured this one out yet.*

- - -
P.S: I'd love to hear your feedback on [sprymesh which is a simple web host (backed by Dropbox Synchronization) that I am building!](https://sprymesh.com)
Is legacy code that bad?
Tags: legacy
Published: 2017-07-04 21:26:32

---
title: Is legacy code that bad?
published: true
description: 
tags: legacy
---
I took almost 30 years of professional programming to understand my real passion in it. Oddly enough it appears to be working with legacy code. Don't get me wrong, I don't like legacy code at all. I swear all the time, while I work with it.

But just think about it for a bit, legacy code comes already packed with all its real life usages. If  it's a piece of big proprietary monolith, then everything is there. Just start your favorite IDE and let it help you. If it is some open source project, you're probably aware of some other projects using it. You may even have a chance to find them all, if you care to look really good.

Therefore, you can refactor all your way, basing your decisions on actual data, instead of guesses, like when you work with completely fresh code, which was never really used. And when you see that old rusty code improves after your changes, it feels sooo good. :)
Hi, I'm Cath
Tags: introductions
Published: 2017-07-04 17:19:43

---
title: Hi, I'm Cath
published: true
description: My introduction post
tags: introductions
---

I have been coding for 4 years.

You can find me on Twitter as [@cathortiz](https://twitter.com/cathortiz)

I live in Argentina.

I work feelance.

I mostly program in these languages: Python.

I am currently learning more about Java. 

Nice to meet you.
Hi, I'm Gilbert Arias
Tags: introductions
Published: 2017-07-04 16:25:07

---
title: "Hi, I'm Gilbert Arias"
published: true
description: My introduction post
tags: introductions
---

I have been coding for 5 years.

You can find me on Twitter as [@GilbertArias17](https://twitter.com/GilbertArias17)

I live in Santo Domingo.

I work for My Own Company.

I mostly program in these languages: PHP, HTML5, CSS3, PERL, PYTHON, JS, NODEJS, MYSQL.

I am currently learning more about Full Stack Web Development.

Nice to meet you.
Hi, I'm Marcelo Leiva
Tags: introductions
Published: 2017-07-04 16:16:41

---
title: Hi, I'm Marcelo Leiva
published: true
description: My introduction post
tags: introductions
---

I have been coding for 5 years.

You can find me on GitHub as [marceloleiva](https://github.com/marceloleiva)

I live in ChillÃ¡n.

I work for GreenBot Labs

I mostly program in these languages: Python.

I am currently learning more about Kotlin, Machine Learning.

Nice to meet you.
Hi, I'm Bikram Bhattacharya
Tags: introductions
Published: 2017-07-04 16:02:19

---
title: Hi, I'm Bikram Bhattacharya
published: true
description: My introduction post
tags: introductions
---

<img src="https://thepracticaldev.s3.amazonaws.com/i/72upe2ws6vqjdi8e19fn.jpg">
<p>I have been learning coding for past 1 year. In the beginning it was hard for me now learning new languages is fun for me.</p>
<p>I am fascinated about Js and Web devolopment, I choose Web development because it gives us a great opportunity to show the world my creativity easily.</p>
<p>To know more about me visit my <a href="https://liveforcodingblog.wordpress.com/">blog</a>  </p>
<p>I must admit that the idea of creating a blog to present myself online,came in my mind from a post written by <a href="https://twitter.com/samjarman">Sam Jarman</a> in this Dev community.</p>