GildedRose-Refactoring-Kata
gilded-rose-rust
Our great sponsors
GildedRose-Refactoring-Kata | gilded-rose-rust | |
---|---|---|
27 | 1 | |
3,460 | 1 | |
- | - | |
8.8 | 3.2 | |
11 days ago | about 2 years ago | |
C++ | Rust | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
GildedRose-Refactoring-Kata
-
Getting a job at Apple without going to college or doing LeetCode
The problem is though how do you evaluate for real work without a portfolio of experience? Real work projects take weeks - perhaps months - to design, build, review and release. How do you test for that, really?
I agree leetcode style interviews are artificial, but I think they persist because few people have identified and popularised effective alternatives. At least with leetcode you've shown people in front of you have been prepared to go learn arcane stuff and apply it. It's not good, but it's better than nothing.
I was once asked to do the Gilded Rose kata[1] for one ~200 headcount Series D "startup", and it not only resembled real work - it's a refactoring problem - but it also showed their engineering culture. When I joined, I found smart people who weren't leetcode robots, but thoughtful engineers trying to solve tricky engineering problems. I "stole" Gilded Rose to use in other companies when interviewing until I joined my current employer (a FAANG, heavily prescribed process), with great success. I would like to see more katas that are as good at testing real world skills.
Also, something I've only ever been interviewed for twice in 25+ years, which I think is underplayed: pair programming and handling code review feedback. Do this more, please. If you hire people not knowing how they're going to respond to a principal engineer telling them "we need you to think about 4 other things that weren't in the original scope given to you by the PM, can you please go deal with them", why are you surprised when toys are subsequently thrown out of metaphorical prams?
[1] https://github.com/emilybache/GildedRose-Refactoring-Kata
-
Self Improvement
Gilded Rose Refactoring Kata
- Tester votre code autrement avec ApprovalTests
-
Horrific Kotlin-specific syntax that still compiles (and nested if-expressions)
While I recognise your post is about language-specific code-smells, your example reminds me of the GildedRose kata.
-
The Gilded Rose Kata in Rust
Nowadays, I think that the kata is much more widespread. It's available in plenty of languages, even some that are not considered mainstream, e.g., XSLT or ABAP. In this post, I'd like to do it in Rust. My idea is to focus less on general refactoring principles and more on Rust specifics.
-
Just one of the many reasons I struggle to get out of bed each day.
You can also start with approval tests and try to reach 100% code coverage, then start refactoring. The Gilded Rose kata from Emily Bache explains this in detail (https://github.com/emilybache/GildedRose-Refactoring-Kata). Spending a bit of time on that kata can really help you tackling this mess. They have a video series of this kata on Youtube (https://www.youtube.com/watch?v=zyM2Ep28ED8).
- As a self-taught programmer, what GitHub projects can I work on that will show evidence of exceptional ability so I can get a job?
-
Pre-interview test for a junior back-end dev position. Is this kind of test normal?
Want to see more mid-level oriented tasks, look at Gilded Rose.
-
I did the Gilded Rose kata with a somewhat different approach to normal (using Handler classes) [JAVA]
I did the Gilded Rose kata (as described here). Most places I've seen this discussed use an object hierarchy on top of the Item class, but I had a different approach in mind. Different types of handlers exist and they match to the possible items. This allows for easily adding new items with same functionality, or easily extending with new types of behaviour.
-
Tools for better programming
GildedRose Refactoring Kata PHP
gilded-rose-rust
-
The Gilded Rose Kata in Rust
View on GitHub
What are some alternatives?
Racing-Car-Katas - The starting code for several code katas on a racing car theme
Tennis-Refactoring-Kata - This is a Refactoring Kata based on the rules of Tennis
SupermarketReceipt-Refactoring-Kata - This is a refactoring kata for improving your coding skills
laravel-ide-helper - IDE Helper for Laravel
Assert - Thin assertion library for use in libraries and business-model
awesome-php - A curated list of amazingly awesome PHP libraries, resources and shiny things.
Parrot-Refactoring-Kata - Kata to learn about Polymorphism
sourcery - Instant AI code reviews to speed up your pull requests
gildedRoseKata
weather-dress - Restful API which recommends clothing or accessory products depending on air conditions data which is achieved from https://api.meteo.lt/ , primary data is from LHMT.
Lift-Kata - starting position for the Lift Kata with an Approval Testing approach
kotlin-puzzlers - A collection of Kotlin Puzzlers