Browse Source

New chapter: run things locally

master
Julio Biason 5 years ago
parent
commit
69fc19cfcc
  1. 1
      content/books/things-i-learnt/_index.md
  2. 2
      content/books/things-i-learnt/config-file/index.md
  3. 42
      content/books/things-i-learnt/run-locally/index.md
  4. 2
      content/books/things-i-learnt/units/index.md

1
content/books/things-i-learnt/_index.md

@ -53,6 +53,7 @@ template = "section-contentless.html"
* [Always Use UTF-8 For Your Strings](use-utf8) * [Always Use UTF-8 For Your Strings](use-utf8)
* [Optimization Is For Compilers](optimization) * [Optimization Is For Compilers](optimization)
* [Units Makes Things Clear](units) * [Units Makes Things Clear](units)
* [If It Doesn't Run On Your Computer, You Have A Problem](run-locally)
* Making Things Go * Making Things Go
* [The Config File Is Friend](config-file) * [The Config File Is Friend](config-file)
* [Command Line Options Are Weird, But Helpful](command-line-options) * [Command Line Options Are Weird, But Helpful](command-line-options)

2
content/books/things-i-learnt/config-file/index.md

@ -52,4 +52,4 @@ you'll find that you're half-way through it.
[^1]: In other words, they have a [time to [^1]: In other words, they have a [time to
live](https://en.wikipedia.org/wiki/Time_to_live). live](https://en.wikipedia.org/wiki/Time_to_live).
{{ chapters(prev_chapter_link="/books/things-i-learnt/units", prev_chapter_title="Units Makes Things Clear", next_chapter_link="/books/things-i-learnt/command-line-options", next_chapter_title="Command Line Options Are Weird, But Helpful") }} {{ chapters(prev_chapter_link="/books/things-i-learnt/run-locally", prev_chapter_title="If It Doesn't Run On Your Computer, You Have A Problem", next_chapter_link="/books/things-i-learnt/command-line-options", next_chapter_title="Command Line Options Are Weird, But Helpful") }}

42
content/books/things-i-learnt/run-locally/index.md

@ -0,0 +1,42 @@
+++
title = "Things I Learnt The Hard Way - If It Doesn't Run On Your Computer, You Have A Problem"
date = 2019-07-18
[taxonomies]
tags = ["en-au", "books", "things i learnt", "local run", "cloud"]
+++
I've seen a lot of systems that would never run on a isolated computer, like
the developer tool, 'cause the system requires running on a specialized
environment. Those things are wrong.
<!-- more -->
Requiring a specialized environment absolutely kills productivity.
If your system will run on a specialized environment -- and I'm including "the
cloud" here -- look for something that can abstract whatever you're using. For
example, if you're using AWS SQS, which is a queue, look for a library that
can abstract the way a queue works so you can also run with RabbitMQ, which
can be easily run on your own computer.
If you're using a very specialized thing, you may have to write the
abstraction yourself, isolating it from the main system, so you can develop
the main product in peace.
One of the most productivity killer environment I worked require running the
project on a customized Apache installation, running the client specialized
framework. The whole problem is that the client refused to allow us to not use
it or install on our local machines (mostly 'cause the install of said
framework was really complex). In other for us to work and see things working,
we had to use a VPN to the client computers, develop things there and manually
forcing things to reload. No only we had absolutely nothing to do when the VPN
was down ('cause it require out company infrastructure working hand-in-hand
with the client infrastructure and the internet provider infrastructure, which
is absolutely impossible), the flow was really cumbersome.
If we had the chance to not use it and run all the development and tests on
our own computers, I have the feeling we could deliver the product 2-3 months
earlier.
{{ chapters(prev_chapter_link="/books/things-i-learnt/units", prev_chapter_title="Units Makes Things Clear", next_chapter_link="/books/things-i-learnt/config-file", next_chapter_title="The Config File Is Friend") }}

2
content/books/things-i-learnt/units/index.md

@ -26,4 +26,4 @@ That's why adding units to the function or parameters make sense. It removes
the ambiguity of what it means and doesn't rely on some specialized IDE/Editor the ambiguity of what it means and doesn't rely on some specialized IDE/Editor
that display the parameter names. that display the parameter names.
{{ chapters(prev_chapter_link="/books/things-i-learnt/optimization", prev_chapter_title="Optimization Is For Compilers", next_chapter_link="/books/things-i-learnt/config-file", next_chapter_title="The Config File Is Friend") }} {{ chapters(prev_chapter_link="/books/things-i-learnt/optimization", prev_chapter_title="Optimization Is For Compilers", next_chapter_link="/books/things-i-learnt/run-locally", next_chapter_title="If It Doesn't Run On Your Computer, You Have A Problem") }}

Loading…
Cancel
Save