Programming Articles
CPU Bound Workloads with NodeJS: Processor Parallelism
As discussed in the Understanding the NodeJS Event Loop post, NodeJS is a great language for high I/O workloads. For any program or service that is expected to be I/O bound, NodeJS is arguably one of the best languages for the job due to its asynchronous event model. The single threaded, event loop architecture allows […]
Understanding the NodeJS Event Loop
While there are numerous articles and documentation written about the NodeJS event loop, I wanted to a write about the event loop to help solidify the concept for myself. Being a Node developer it is important to understand what the “event-driven, non-blocking I/O model” paradigm is and how asynchronous functions are being executed. Simply put, […]
NodeJS ES7 AWS Lambda
Running Node.js ES7 on Lambda is straightforward with Babel JS. While slightly inconvenient to have to rely on a compiler, some of the ES7 features such as async/await are invaluable to modern JavaScript programming. Along with deploying ES7 applications, comes the need to be able to test Lambda locally as it will not be possible […]
NodeJS ES6 with BabelJS
The JavaScript landscape has been one of the fastest growing programming niches I’ve had both the pleasure and angst of working with. While it’s exciting to watch and work with a rapidly growing technology, it can be extremely frustrating mastering a library or technique to have it quickly become obsolete. Some the best and, in […]
Create PHP Composer Package
Composer is an important tool in PHP development for dependency management. It allows for applications to easily use and share libraries while maintaining version control. This is a simple tutorial on how to make packages which can be shared with and used by other developers. The tutorial follows a packge I created. Folder Structure Typically […]
Hacklang Async Processing
One of the frustrations in working with PHP is the synchronous, blocking, behaviour of the language. There are PHP extensions, such as pthreads that offer quasi PHP threading; however, that requires extra considerations such as server setups, locking, shared state, etc., and is often times omitted from development discussions due to overhead/learning curve of writing […]
Hacklang Generics
Facebook released Hacklang in early 2014 for use with HHVM, and has since announced that almost their entire code base has been ported from PHP to Hack. Hack interoperates seamlessly with PHP code and offers various enhancements, such as static typing, collections, asynchronous processing, etc. As a PHP developer migrating to Hack, the language was […]
PHP Composer Autoloading
Composer is PHP’s dependency manager tool. Composer allows you to specify libraries that are need for a project, and will automatically include those libraries along with their dependencies. Composer also allows you to create your own packages and share them via the Packagist website. Even when working on projects in which you are not using […]
Java JDK8 Install
Java is a common language in both the professional and academic realm, and a valuable language to know. Unlike PHP, Python, or Ruby, Java is a compiled language which gives it some unique performance advantages. Java is also the language used when developing Android apps and is essential to mobile development. Taking the time to […]
Analyzing PHP Code with Xdebug
Xdebug is a PHP extension that allows you to profile and debug your PHP code. It enables you to get detailed breakdowns of memory usage, function call costs, code efficiency, etc. on both your PHP scripts and HTTP page loads. Xdebug offers many unique features and it’s an invaluable tool for analyzing code during the […]