Files
second-brain/Clippings/Uncle Bob’s favorite programming language— but why 🤔.md
T

2.7 KiB
Raw Blame History

title, source, author, published, created, description, tags
title source author published created description tags
Uncle Bobs favorite programming language— but why 🤔 https://blog.devgenius.io/uncle-bobs-favorite-programming-language-but-why-8fc3f85c77a8
Kirubakaran
2024-09-19 2024-10-29 Robert C. Martin, also fondly known in the technology circle as “Uncle Bob,” is a highly influential figure in the software development world. Hes a renowned author, speaker, and consultant, best…
clippings

[

Kirubakaran

](https://kirubaspace.medium.com/?source=post_page---byline--8fc3f85c77a8--------------------------------)

[

Dev Genius

](https://blog.devgenius.io/?source=post_page---byline--8fc3f85c77a8--------------------------------)

Robert C. Martin, also fondly known in the technology circle as “Uncle Bob,” is a highly influential figure in the software development world.

Image from wikipedia

Hes a renowned author, speaker, and consultant, best known for his teachings of clean code principles, agile methodologies, and software craftsmanship.

Hes the author of numerous influential books like “Clean Code” and “The Clean Coder,” and he was one of the original signatories of the Agile Manifesto.

Do you want to know what his clean code advice ?

Uncle Bobs work has significantly improved modern software development practices, emphasizing the importance of code quality, maintainability, and professionalism among developers.

Out of all the programming languages we have, Uncle Bob chooses “Clojure”. You want to find it why?

Clojures minimalist syntax and importance of functional programming allow to write elegant code that makes easier to read and understand.

ex: Filtering and transforming data

(->> (range 10)   ; Create a sequence of numbers from 0 to 9     (filter even?) ; Keep only the even numbers     (map inc)      ; Increment each number by 1     (reduce +))    ; Sum the resulting numbers

Clojure gives importance to functional programming & immutability

ex: Updating a nested data structure

(def data {:user {:name "Alice" :age 30}})(assoc-in data [:user :age] 31) ; Returns a new map with the updated age

Clojure leverages Java ecosystem which helps to use many tools/libraries

(import java.time.LocalDate)(LocalDate/now) ; Get the current date using Java's LocalDate class

Clojures built-in concurrency support help to leverage the modern computing systems

(defn square [x] (* x x))(pmap square (range 10)) ; Compute squares in parallel