"Refactoring Python Code" book update: a few days ago I started moving all code examples to separate files (out of Markdown files) and covering them all with unit tests. That has been great, as I found tons of small typos. #buildinginpublic (1/4)
Using external files is a great idea - each file is fully working code, and in the book I just include the part I need (e.g. I skip imports and some helper functions).

I have the best of both worlds, I have working code and concise examples (2/4)
It also means whoever buys the book will receive a package of files with code and tests so that they can play with them! I'm super happy with this decision.

I'm using markdown-pp (github.com/jreese/markdow…, now deprecated) to handle including external files (3/4)
Currently the book stands at 159 pages. I have 16-18 more refactoring techniques to add (on top of 30 ones already there) + a picture for each refactoring. I feel I'll end up with 300 pages in the end. (4/5)
Once I'm done I'm really excited about sharing how the book was written, with my favorite editor @Typora and a few small scripts on top of existing tools like pytest and pandoc

• • •

Missing some Tweet in this thread? You can try to force a refresh
 

Keep Current with Gregory Witek

Gregory Witek Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

PDF

Twitter may remove this content at anytime! Save it as PDF for later use!

Try unrolling a thread yourself!

how to unroll video
  1. Follow @ThreadReaderApp to mention us!

  2. From a Twitter thread mention us with a keyword "unroll"
@threadreaderapp unroll

Practice here first or read more on our help page!

More from @gregorywitek

7 Jan
Every article about becoming a good writer says "read a lot". Yet in programming we rarely practice reading. We only read the code we have to understand in order to change, we rarely encourage each other to read and analyze some well-written code
I think coding is very much like writing and yet we don't teach it like we teach writing. We teach to produce working code, which is bare minimum. We rarely emphasize that the code is written with other developers in mind.
Some developers realize it themselves and instinctively try to make their code easier to understand, but I have seen very little focus on it at uni or bootcamps.
Read 4 tweets
3 Jan
One interesting thing I've learned from the Alibaba story was how in EBay went from 90%+ of the market in China in 2002, to leaving China entirely just 5 years later. (1/5)
There are many reasons why EBay lost, but one interesting one is that they refused their Chinese team to drive the product. Instead they tried to unify the platform globally, so that the whole site worked and looked the same everywhere. (2/n)
These days it's changing, but generally Chinese web design is very different than western design - sites are more busy and flashy, there's a lot of information there. Compare main page of Amazon vs JD: (3/n)
Read 6 tweets
1 Jan
The president of Square Enix (Final Fantasy games and more) wrote about play-to-earn and NFTs as upcoming major trend in gaming in 2022. A large part of the letter feels like crypto bros' wet dreams, but a small part there could lead to something positive: ImageImage
The bad parts are obviously that they want to shove NFTs and blockchain in players' faces, which I believe is a dangerous and completely unnecessary trend.

Also saying that goodwill and volunteer spirit are inconsistend in comparison with willing to make money makes me cringe
I don't think that play-to-earn will make games more exciting, instead it'll turn them into weird worlds with little to no authentic enthusiasm. It's like a party where some guests are there to have fun and some are hired actors, but you don't know who's who.
Read 7 tweets
29 Dec 21
This year I've read so far 20 books. Here's what I do and don't recommend: 📕
1. "Multipliers" - a book about a leadership and being a genius vs genius maker (someone who helps other to reach their potential). Overall ok, but it should be 50 pages instead of 250
2. "System design interview" by @alexxubyte - great read when preparing for tech interviews. Very solid and yet concise examples. It helped me to pass a number of interviews. Highly recommended!
Read 21 tweets
30 Sep 21
🧵The job market for junior devs is not great these days (to put it mildly), so here are a few tips from recruiters, hiring managers, and my own experience about how to get your first job as a developer:
#CodeNewbie #DEVCommunity Image
1. Check multiple job boards, not only LinkedIn - junior positions are easier to fill, so there's no need for companies to advertise them everywhere, they'll get a lot of candidates anyway
2. Check out careers page of larger companies around you, and sign up for updates if they have such option. Careers page is where the job offers appear first, so be the first one to know about them
Read 21 tweets
26 Dec 20
With 💎 Ruby 3 released, let's have a look at how the language evolved since the version 2.0 was released more than 7 years ago. A history thread about #ruby #ruby3 🧵:
In 2013 @yukihiro_matz announced Ruby 2.0 and he said the core team would release a new minor version every year during Christmas time🎄This was huge news 🎉 for Ruby devs since until then the releases were irregular. It made the future look very bright
Ruby 2.0 brought a bunch of features: keyword arguments, module#prepend and lazy enumerators.
One minor, but verys useful feature was %i literal to create arrays of symbols - I use it so often! 💪🏻
Read 36 tweets

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3/month or $30/year) and get exclusive features!

Become Premium

Too expensive? Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal

Or Donate anonymously using crypto!

Ethereum

0xfe58350B80634f60Fa6Dc149a72b4DFbc17D341E copy

Bitcoin

3ATGMxNzCUFzxpMCHL5sWSt4DVtS8UqXpi copy

Thank you for your support!

Follow Us on Twitter!

:(