RSS Amplifier

Blog

CoderOnCode

Random ramblings about code, programming, and technology

coderoncode.comRSS feed ↗60 posts

Dormant Last read · last published · next check
Read 13 hours ago and current, but nothing has been published for 9 years.

Latest posts

Ethereum Zero to Hero: Developing Our First Contract

This is the third part of our Ethereum Zero to Hero guide. If you have not read the previous post, I highly recommend checking it before moving forward. In this post we are going take were we left off and start developing a basic Smart Contract and learn more about solidity and how the contracts work. One of the most interesting qualities of the Ethereum blockchain is the ability create digital…

Ethereum Zero to Hero: Setting a Development Environment

This is the second part of our Ethereum Zero to Hero guide. If you have not read part, I highly recommend it before jumping ahead. In this post, we are going to set up a basic private test-net environment for ethereum development and experimentation. Step 0: Requirements You are using MacOS You have a basic understanding of software development You know what Ethereum is and understand it is basic…

Ethereum Zero to Hero: Introduction

2017 has arguably been the year of Cryptocurrency, with Bitcoin being getting most of the spotlight; at the core of Bitcoin, we have the Blockchain . Blockchain technology applications go way beyond digital currency, and one of the best examples is Ethereum which is a decentralized platform that runs smart contracts. This allows developers to build enormously powerful decentralized applications,…

5 Trends To Watch Out On 2018

With 2018 around the corner is prudent to take some time and see what new and existing trends will dominate 2018. Blockchain In 2017 we saw many of the Silicon Valley giants experiment or even introducing their own blockchain implementations, IBM been the most significant one by collaborating with food distributors, government regulation agencies and banks for leveraging blockchain. Why it matters…

You Should Learn Functional Programming in 2017

Functional programming has been around for a very long time, starting in the 50’s with the introduction of the Lisp programming language; and if you been paying attention in the last two years languages like Clojure , Scala , Erlang , Haskell and Elixir have been making a lot of noise and getting tons of attention. But what is functional programming , why is everyone going crazy about it and why…

Neural Networks Without a PhD: Topologies

Topology of a neural network refers to the way the Neurons are connected, and it is an important factor in network functioning and learning. A common topology in unsupervised learning is a direct mapping of inputs to a collection of units that represents categories (e.g., Self-organizing maps). – Springer In our previous post we learned about the components that form a neural network: Input Nodes…

Vim Is The Perfect IDE

Over the years I’ve jumped back and forth between many code editors, IDEs and tools ; but it seems that somehow I always end up coming right back to VIM, and not only for programming – guess which markdown editor I’m using to write this post. I’ve have tried Atom, SublimeText, TextMate, Eclipse, Visual Studio, and most of the Jetbrains products, I’m constantly tweaking and looking for a better…

Neural Networks Without a PhD: Components of a Neural Network

Neural networks (also referred to as connectionist systems) are a computational approach, which is based on a large collection of neural units (AKA artificial neurons), loosely modelling the way a biological brain solves problems with large clusters of biological neurons connected by axons. – Wikipedia In essence Neural networks are digital representations of their biological counterparts, and…

Neural Networks Without a PhD: Introduction

There is arguably nothing more exciting happening right now in software development than all the new research, and advances in Artificial Intelligence , terms like Machine learning, Deep Learning and of course Artificial Neural Networks have become more common in the developers vernacular. These are exciting times for AI and not without reasons, as the technology continues to advance at an…

2017: Simplifying and Regaining Focus

Another year done and over, and as is tradition there needs to be a new year-end blog post, clarifying how I’m going to start doing everything right on 2017 and be a 10x human being, yes 2017 is the year to optimize, simplify, achieve all our goals and wildest dreams …. except all those blogpost are frankly bullshit. Personally, 2016 was a rough year full of stress, problems and an overall feeling…

Machine Learning: A Simple Neural Network

For the last few months I’ve been slowly getting my head around the concepts of machine learning, artificial intelligence and neural networks. The impact that machine learning could potentially have on everyday tasks and the way we develop and interact with applications is incredibly exciting; for that reason I been slowly trying to spend as much of my free time as possible trying to learn this…

Functional Programming: The Paradigm for the Next Generation

Functional programming is often treated as the fad of hipster mustachioed programmers, and more often is dismissed without much consideration; after all Object Oriented Programming is superior. Well, at least that use to be the trend but in recent years Functional programming has experienced a renaissance and as result functional programming languages are gaining more and more adoption. But…

Back in the Saddle Again

It has been over 4 months since I posted anything online, in the meantime the world has kept spinning and there are many updates, changes and news to talk about; so why did I suddenly decided to go silent? Well there are a myriad of reasons but primarily it was due to my change in role at Demac Media, for the last 5 months I been operating as the Director of Engineering . The title might sound…

On Codes on Conduct

Recently, there has been a lot of controversy and discussion surrounding the adoption of a code of conduct for the PHP project; there has been endless back and forth between proponents and opponents of the motion. I’ve debated if I should publish my opinions on the subject or simply remain quite and hope for the best; however as emails from the internals list continued to flood my inbox, I found…

Exploring Elixir Recursion and Lists

Recently, I’ve been playing with a new language called Elixir . Elixir is a functional programming language specifically designed with the intention of creating scalable and maintainable applications. As many developers my main experience with programming languages and paradigms has been with object oriented programming ; functional programming is a completely different beast and as I explore and…

2016 the Year of Quantified Self

Quantified self and self-improvement have been on my radar for a few years now, and with a new year starting I finally decided to give it a serious try and see what outcomes I get from it. For anyone not familiar with the concept, quantified self is a movement to incorporate data acquisition technologies on aspects of a person’s daily life; for example mood over time, food consumed, weight, heart…

On New Year's Resolutions

Another year came and went, and as we do every year we are expected setup new resolutions and new goals for the upcoming year. It’s the usual thing to do that society expects of every single one of us. I can almost hear family and coworkers asking — So, Any new year resolutions?— And like every year I’m tempted to answer yes and list some of the many things on my ever-growing todo list: Learn…

TDD is not Dead

So, where does this whole TDD is DEAD thing came from? Well, it all started with let’s say a provocative talk and follow up blog post by David Heinemeier Hansson (@DHH) where he expressed his frustration with testing and put into question the value of TDD. To break down DHH’s points and concerns against TDD: Developers make you feel like your code is dirty if you don’t practice TDD. Driving design…

Manfred Macx and the Problem of Information Overload

I’ve always been fascinated with the technology concepts presented on Charles Stross book Accelerando , artificial cats, downloads of consciousness, nanotechnology, etc. but of all of them one got my particular attention; Manfred Marcx glasses. Glasses? What’s so special about the glasses? Well this are not an ordinary pair of glasses, they are in fact augmented reality glasses, informing Manfred…

On Encrypting Magento Extensions

The opinions expressed here represent my own and not those of my employer. Recently there has been much debate over if Magento Connect should allow encrypted extensions and if so in what shape and form. The following post is my honest, uncensored opinion about the whole situation, please read the whole thing you might be surprised by my conclusions. Its Rant time Let me start by saying that I…

Git Tips and Tricks

Recently I’ve been collecting a large collection of git shortcuts, tips and tricks. The following commands have been tested on linux and some of them will required a recent version of git. I expect that many of you will find them useful as much as I do. So let’s get started with some simple but helpful commands to search and review your git repository history. Show log for only a specific branch…

Getting Started With Magento and Docker for Development

Docker has taken the DevOps community by storm and is rapidly changing the ecosystem towards distributed architectures, and in case you haven’t heard about Docker here is the quick definition: Docker is an open platform for developers and sysadmins to build, ship, and run distributed applications. And while Docker brings amazing things to the table in terms of application architecture, scalability…

Design Patterns in PHP: Adapters

The adapter pattern also referred as the wrapper pattern, I find that wrapper is a more fitting name since it describes clearly what this pattern does; it encapsulates the functionality of a class or object into a class with a common public interfaces. In software engineering, the adapter pattern is a software design pattern that allows the interface of an existing class to be used for another…

WTF are: Service Contracts (Magento 2 Edition)

Now that Magento2 beta has been officially released, you are probably wondering what the hell are Service Contracts and more importantly why the hell do you need them. But before we jump into the nitty-gritty of service contracts let’s get this out of the way: Yes, Service contracts are nothing more than a set of interfaces used to define the public api of a module. Now, is important to clarify…

Watch: We Strongly Recommend You Write Best Practices

What to watch this week, Lauren Rother from PuppetLabs give us their best practices to write best practices. A great set of recommendations for writing and mantaining your best practice documentation. Writing best practices documentation is definitely an art, but that doesn’t mean a little science can’t help us along. Through some trial and error, I’ve uncovered some tenets of writing engaging,…

The Async Software Development Manifesto Revised

The ‘Async Software Development Manifesto’ has been making the rounds on sites like HackerNews and /r/programming; and while I don’t agree entirely with all that is proposed, some of the points made by the author made so much sense that I felt motivated to break them down and make some contributions of my own. Async Software Development Manifesto The manifesto appears to be inspired by the ‘Agile…

Watch: Funny Tech Support

What to watch this week, Let’s have a laugh watching Wes Borg and his fanstatic routine on the perils of tech support. This Is Why I never got into Tech Support.

Watch: The Myth of the Genius Programmer

What to watch this week, In this week video Brian Fitzpatrick and Ben Collins-sussman talk about the pervasive myth of the uber-programmer the know it all genius; why everyone secretly wants to be considerad a genius and how this can affect the collaboration and behavior. A pervasive elitism hovers in the background of collaborative software development: everyone secretly wants to be seen as a…

Watch: What is Docker?

What to watch this week, Solomon Hykes explains the docker platform and how it can help developers to build and deploy apps more easily. Great for those that want to understand more about the docker platform. Docker is an open platform for developers and sysadmins to build, ship, and run distributed applications.

Watch: Magento Fireside Chats on Testing

What to watch this week, the Magento Fireside Chats on testing. On this series of hangouts Magento developers come together to discuss their different approaches to testing, covering a variety of tools like Selenium, PHPUnit, PHPSpec, Menta and more. Episode List Episode 1: In this episode Vinai Kopp will show how to mock objects in your test cases and Fabrizio Branca will give an introduction…

Watch: How to Build a Framework

What to watch this week, an amazing talk by Max Lynch from Ionic , where we recalls his experiences while creating the Ionic framework . Great Insights for anyone looking to start an open source project regardless if is a framework or not. Max Lynch presents at the 2014 Midwest Mobile Summit on how to build a successful open source framework.

Exploring Hack: Building a MicroFramework

As a full-time Magento Developer I deal with a very specific kind of PHP every single day; this can at time get rather boring since rarely one can apply new technologies or programming concepts. One of the new languages that keeps grabbing my attention is HACK , which is almost identical to PHP in terms of syntax but at the same time implements some of the more attractive features from statically…

Swiss Army Knife Syndrome

I apologize beforehand if this article is more of a rant than usual. The inspiration for the “Swiss Army Knife Syndrome” came from my frustration in dealing with project managers, clients, and even other developers, that think in too much of a narrow, particular way. I call it the “Swiss Army Knife Syndrome”. The Swiss Army Knife The term ‘Swiss Army Knife’ is often used to describe a collection…

Flexible PHP Development with PHPFarm

If you have been working with PHP for a while, chances are that you have come across with a project, extension or script that requires to be tested on multiple PHP versions, for simple CLI scripts this seems easy enough but what happens when you are working with complex applications, developing for frameworks or multiple versions of them ? Let’s say that like me, a Magento developer that regularly…

Is HHVM/Hack the new face of PHP?

HHVM has been generating a lot of buzz and excitement in the PHP world recently and if you haven’t heard about HHVM yet you should check my first two posts about it. An Introduction to HHVM First steps on HHVM Why Should I Care? That’s a really good question why you should care about HHVM, after all is being developed by Facebook (and Facebook is eeeviiiil right?); well the case is that HHVM is –…

Working with Psysh

I previously mentioned Boris, a terrific REPL for PHP, and while Boris is a great and functional REPL, is not the only available. Psysh is actually more than a simple REPL it’s also an interactive debugger; which means you can say goodbye to the endless barrage of var_dump() and die() statements. But do we really need another REPL for PHP, well honestly we could probably get by with the solutions…

Hello Hack

Recently Facebook unveiled Hack , a new programming language that aims to provide developers with the tools to write and ship code quickly while catching errors on the fly. What is Hack? Hack is as programming language designed to work with HHVM and the same time it works seamlessly with PHP as Facebook lead devs: Hack has deep roots in PHP. In fact, most PHP files are already valid Hack files.…

HHVM In The Wild

HHVM is taking the PHP world by storm, and as PHP developer there many things to be excited about HHVM. The following list shows how developers are using HHVM in the real world in very different scenarios. HHVM, Nginx and Laravel Laravel on HHVM Use HHVM to speed up Composer Magento on HHVM (Magento Live UK) Symfony benchmark using HHVM Magento and HHVM Additional Reading Speeding up PHP-based…

Exploring Traits

Among the new features and fixes that come with PHP5.4 we have the addition of traits to the PHP language, PHP is a single inheritance language this means that classes and only inheriting from single parent class, in practice this complicates code organization and can lead to code duplicity. Languages like C++ or Python manage this problem by allowing inheritance from multiple classes, Ruby in the…

Laravel Learning Resources

For the last couple of months I been working with Laravel and learning a lot, here are some of my favorite resources: Books Laravel: Code Bright Laravel: From Apprentice To Artisan Laravel 4 Cookbook Blogs Laravel Weekly - Newsletter Jeffrey Way Taylor Otwell Screencasts and Podcasts Laracasts Build an eCommerce App in Laravel - Tuts+ Laravel.io Podcast

Boris The Missing PHP REPL

REPL(read-eval-print loop) can be great tools for quickly testing concepts, experimenting and getting quick feedback when learning a new language. Many languages and frameworks provide some sort of REPL like the rails console or laravel’s artisan tinker. PHP by itself has the interactive shell that can be invoked with: php -a However the PHP Interactive Shell lacks several features that other…

Magento Online Hackahon 2014

This past weekend the Magento Community hosted the first Magento Online Hackathon, here is a quick recap of my experience. The Community First and foremost a big shout out to the Magento Community, you guys are awesome. Very few other communities could and have organized themselves to run a Hackathon this size let alone an online one; It’s truly amazing to see people from so many countries and in…

Magento and HHVM

If you are developer or system administrator working with Magento running one or more medium sized stores, chances are that you are familiar with the many challenges of optimizing and scaling Magento. Magento is (in)famous for its performance, specially when scaling to a large numbers products, transactions or even catalog rules, seasoned Magento developers have probably hit at least one of this…

Design Patterns in PHP: Singletons

The singleton pattern is used to restrict the instantiation of a class to a single object, which can be useful when only one object is required across the system. Singletons are designed to ensure there is a single (hence the name singleton) class instance and that is global point of access for it, along with this single instance we have global access and lazy initialization. A basic Singleton…

Design Patterns in PHP: Using Factories

The factory pattern is one of the most commonly used Design Patterns, it is useful when we need to choose between several interchangeable classes at runtime. By using factories we are also separating the creation of an object from the actual implementation. We can define a factory as a simple design pattern that give us a convenient way to instantiate objects. A factory is capable of creating…

Playing with dependency injection in PHP

Dependency Injection is a software design pattern that allows avoiding hard-coding dependencies and makes possible to change the dependencies both at runtime and compile time. By using Dependency Injection we can write more maintainable, testable, and modular code. All projects have dependencies. The larger the project the more dependencies is it bound to have; now having a great number of…

The Transhumanist Revolution: Hubris

transhumanism (abbreviated as H+ or h+) is an international cultural and intellectual movement with an eventual goal of fundamentally transforming the human condition by developing and making widely available technologies to greatly enhance human intellectual, physical, and psychological capacities. en.wikipedia.org/wiki/transhumanism What is the transhumanist Revolution? Or even better why is…

Technical Debt

Technical Debt, chances are that you as developer have heard that term at least once before; but ask yourself do you really understand technical debt and when is appropriate to use it. The term “technical debt” was first coined by Ward Cunningham who compared technical complexity and debt in a 1992 experience report: Shipping first time code is like going into debt. A little debt speeds…

We are consuming data the wrong way

Welcome to the information age where everything is connected, everything is in the cloud and where rivers of information flow directly to your screen. If you ever felt like you where drowning in information you are not alone, we consume information – or at least try to – from dozens or even hundreds of different channels. As we move forward in the Age of Information we only increase the different…

Stop Disrupting Everything

If you have been hanging around in HackerNews for the last few months chances are that you have seen at least one post similar to the following ones: Disrupt Social Media Help me Disrupt Health Care Disrupting Mass Surveillance Disruptive Innovation Disrupt Sleep Disrupt yourself and even - Indian Inventor Disrupts The Period Industry And the list goes on and on, disrupt is the new magical…