Posts

Ethical Reflection on Ready Player One

I think that those two quotes extracted from the book represent most of the moral dilemma that the author wanted to depict in Ready Player One, which in my opinion is the question of whether creating a virtual world where everything is better and more fun, where most any dream can come true is a would be a good or bad idea. Part of it is reflected on the first quote from morrow, that talks about the most visible part of the dilemma on Ready Player One’s world, the fact that reality is just so awful that everyone that’s able rushes to the OASIS to forget about it and live a better life in there. Because of that the real world that was already very damaged and ravaged would only evolve for the worse due to neglect and lack of a sense of importance: if you can just escape the horrible reality there is no point on trying to make it better through effort, anything that you can’t solve easily you probably won’t because it’s just not worth it. The other quotation, from Halli...

An Introduction to Metaprogramming

This last blog post was really short, a lot more so than most of the others we’ve been reading so being honest I’m not really sure I have enough to say about it. It was very much an introductory kind of writing just showing a tiny bit of what metaprogramming is and a couple of examples of it in action. I do like the concept, metaprogramming is something I actually have used before, at first without realizing it was a known, named, thing and only realizing it was about a year ago. It’s a very useful concept, especially on those languages that can be done at runtime, meaning you don’t generate the source for other program but expand the running program’s capabilities while its running. Python, Ruby and JS are good examples of languages where its really easy to do some basic metaprogramming to make your life easier, although they don’t get to the levels of Lisp-based languages like Clojure that take metaprogramming to eleven by taking advantage of their really simple syn...

The 4+1 View Model

Software development is a pretty complicated endeavor, with a lot of moving parts and people working on them, and it becomes even more complicated because we as software engineers tend to behave a bit like the five blind men on this week’s videos and writings. We tend to only focus on the things that matter to us without any regard for the project as a whole. The people that are working with persistence want the data to have certain structure that makes it a better fit for the persistence architecture, and they do not care if that makes it easier or harder to use on the rest of the project. If they had their way the data would fit perfectly on the storage solution even if it had to be a frankeinsteinian blob of information. That’s why there’s a huge need for project-wise architecture and software architects, because is their job to be the wise man on Grady Booch’s story and calm the developers down, mixing their needs and priorities in a way that makes sense at a high...