Skip to content

Instantly share code, notes, and snippets.

Rondy Sousa rondy

Block or report user

Report or block rondy

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
View coisas-que-eu-nao-sabia-sobre-testes.md

Coisas que eu não sabia que eu não sabia sobre testes por Hugo Baraúna

  • Por que fazer testes?
    • saber se o software está funcionando de maneira automatizada
      • não elimina os testes exploratórios feito de forma manual
    • manter custos de desenvolvimento em níveis saudáveis
    • ajuda na qualidade interna do código (design e arquitetura do código)
  • Como avaliar a qualidade dos testes (se estão bem feitos)?
    • corretude - se o teste não está gerando um falso positivo
    • adequação do tipo de teste - se o teste é o mais adequado para a situação
View ar_callbacks.md

Callbacks do ActiveRecord: o mal secreto ou apenas mal compreendidos?

Um dos assuntos que mais levantados nas primeiras semanas de um novo desenvolvedor na Plataformatec é sobre o uso de callbacks do ActiveRecord. Neste post, vou descrever um cenário prático que oriente quando o uso de callbacks é bem-vindo ou quando eles deveriam ser evitados. A ideia é ter, ao final, um modelo mental que indique quando seguir um dos caminhos possíveis. (spoiler: o modelo mental vai ser fundamentado em uma boa prática de design de software).

Um exemplo prático

Imagine que, em um software fictício, exista uma funcionalidade "registrar pessoas" com os seguintes requisitos:

  • Os dados de uma pessoa devem ser persistidos no banco de dados (e-mail e CPF, ambos como String).
  • O CPF deve ser persistido apenas como dígitos (isto é, caso o input do usuário siga o formato "999.999.999-99", esse valor deve ser persistido como "99999999999").
View dev_process_guidelines.md

Sugestão de guidelines de processo

DoR (definition of ready) - quando uma história pode ser considerada "pronta pra ser desenvolvida"?

  • Priorização atende a um valor de negócios específico.
    • Como …, devo …, para que...
  • Deve haver um roteiro de testes de aceitação (user acceptance journey), com pelo menos 1 cenário descrito no formato given-when-then.
  • Deve estar estimada pelos desenvolvedores (well-sliced) - 3~5 dias (com baixo risco de complexidade e incerteza):
    • Histórias maiores que 8 story points podem ser quebradas em histórias menores.
    • Podem ser feitas PoCs pra diminuir incerteza e haver proposta de solução.
View notes_on_context_maps.md

A Context Map Should Answer:

  • Where is the technical debt?
  • Where are the areas of technical risk?
  • What knowledge gaps do you have?

Spectrum of cooperation

@rondy
rondy / 01_Queueing_Theory.md
Last active Jan 21, 2018
Queueing Theory references
View 01_Queueing_Theory.md

Queueing Theory references

General content

http://www.shmula.com/queueing-theory/
http://ferd.ca/queues-don-t-fix-overload.html
https://news.ycombinator.com/item?id=8632043
https://thetechsolo.wordpress.com/2015/01/25/queueing-theory-explained/
http://people.revoledu.com/kardi/tutorial/Queuing/index.html
http://setosa.io/blog/2014/09/02/gridlock/index.html
View Effective_Engineer.md

FWIW: I didn't produce the content presented here (the outline from Edmond Lau's book). I've just copy-pasted it from somewhere over the Internet, but I cannot remember what exactly the original source is. I was also not able to find the author's name, so I cannot give him/her the proper credits.


Effective Engineer - Notes

What's an Effective Engineer?

View sublime.json
{
"bold_folder_labels": true,
"caret_style": "blink",
"color_scheme": "Packages/One Dark Color Scheme/One Dark.tmTheme",
"ensure_newline_at_eof_on_save": true,
"folder_exclude_patterns":
[
"tmp",
".git"
],
View quotes.md

“Fools ignore complexity; pragmatists suffer it; experts avoid it; geniuses remove it.”

– Alan Perlis (Turing Award #1, ALGOL)


“Computer Science is the first engineering discipline in which the complexity of the objects created is limited solely by the skill of the creator, and not by the strength of raw materials.”

View 01_functional_objects.md

Functional objects on Ruby programming language

Goals

  • Less questions asked. E.g:
  • More consistent style among classes definitions.
View DCI.md

DCI clipping

MVC was meant for reflecting the end user’s mental model but it still makes it too easy to hide the intentions of your program in your code.

  • It’s hard to find bugs in own code
  • It’s fun to find bugs in other people’s code
  • I learn from reviewer’s comments
  • Reviewer learns by reading my cod

Code must be Chunkable! Readable!

You can’t perform that action at this time.