Getting a Little Further Than Hello World With Rust - Part 4: Anatomy of a Data Type
This is the fourth part of Getting a Little Further Than Hello World With Rust series. In this post we will take a closer look at Rust structs, some commonly used traits. If everything goes according to the plan variable, value, reference, pointer concepts, in Rust context, should become clearer by the time you finished reading.
SOLID Principles and Functional Programming
In this post I would like to explore if SOLID principles (a.k.a Object Oriented Design Principles) are useful in a functional programming context. SOLID principles are not sacred commandments that need to be followed dutifully. They are guidelines for designing object oriented code.
All software development activity is design activity. When I say design in this post though, I mean the more abstract design activity that happens (in developer’s head, on paper, etc.) before coding begins.
Java got lambdas now, Kotlin is growing stronger with lots of functional features… Is there anything functional programmers can learn from OOP design?
Cost of Laziness in Clojure
This is a technical post and laziness in this context means deferring execution of code. When the machine first meets the code, it may be executed there and then or it may be stored and executed later. Which of those happens depends on the instructions in the code, the computer just executes them without judgement.
First Order Thinking and Pragmatism Are Not the Same Thing
Most non-technical people think software development is a standardized, repetable process. That is why they come up with enterprise agile frameworks. If it was standardized we would not need to write software but we would generate it from specifications. Every new project, every new task has a component of discovery. It requires us to think outside of the box. Therefore assembly line approach to software development produces mediocre results at best.
Presentation: Main-Loop in Clojure
I did another presentation for Singapore Clojure Meetup about building the main loop for a game (or just an interactive application) from ground up. You can find the slides here.