refactoring   7485

« earlier    

Repeat yourself, do more than one thing, and... — programming is terrible
As Sandi Metz put it, “duplication is far cheaper than the wrong abstraction”.

You can’t really write a re-usable abstraction up front. Most successful libraries or frameworks are extracted from a larger working system, rather than being created from scratch. If you haven’t built something useful with your library yet, it is unlikely anyone else will. Code reuse isn’t a good excuse to avoid duplicating code, and writing reusable code inside your project is often a form of preemptive optimization.

When it comes to repeating yourself inside your own project, the point isn’t to be able to reuse code, but rather to make coordinated changes. Use abstractions when you’re sure about coupling things together, rather than for opportunistic or accidental code reuse—it’s ok to repeat yourself to find out when.
software-development  cultural-norms  refactoring  advice  to-write-about 
yesterday by Vaguery
Refactoring Course
Change the code in such a way that it doesn't break other parts of your program.
5 days ago by nahurst
Рефакторинг: говнокод → конфетка
Мини-курс о рефакторинге.
Рефакторинг — это контролируемый процесс улучшения
кода, без написания новой функциональности. Результат
рефакторинга — это чистый код и простой дизайн.
programming  courses  refactoring 
13 days ago by gevorg
Making Legacy Sites More Performant with Modern Front-End Techniques
Front-end website performance is a constantly moving target but is critical to the overall speed of your site. Best practices evolve constantly. Also, modern browsers bring constant updates to performance techniques and tools needed to identify problems and optimize rendering. These optimizations don’t have to be difficult, and can typically be done in hours.
css  cssbasics  performance  preload  javascript  sass  refactoring  maintainability 
14 days ago by spaceninja

« earlier    

related tags

2017  @qconnewyork  abstraction  active-record  advice  agile-software-development  agile  androiddev  antipatterns  architecture  article  best-practices  bestof2018  bestpractice  bestpractices  book  business  category-fun  change  cleancode  code-smells  code  coding  course  courses  css  cssbasics  cultural-norms  data  database  deprecation  design-patterns  design  designpatterns  dev  devcinema  developer  development  devops  discussion  docker  dry  error  excel  fowler  fridayfrontend  git  github  go  golang  goroutine  graphql  growing  guide  handler  history  howto  html  important  improve  improvement  java  javascript  joelspolsky  katrinaowen  kubernetes  learning  legacy  lessons  library  maintainability  maintenance  martin  microservices  migration  modularity  object-oriented-design  object  oo  oop  oriented  patterns  performance  pinboard-fixup-tweets  practices  preload  principles  programming  project  python  qconnyc  rails  rainsberger  refactor  reference  regression  reliability  rescue  ruby  rubyconf  rules  saas  sandi-metz  sass  semver  skill  software-design  software-development  software  softwaredev  softwareengineering  solid  sql  structure  structure101  style  styleguide  survey  swift  switch  tapas  tdd  testing  thoughtworks  tips  to-write-about  tools  tutorials  tweet  twitter  ui  userexperience  vba  versioning  video  visualization  webdesign  webdevel  weekly.rc  wisdom  work  xp  youtube 

Copy this bookmark: