Zend Framework 1 Extension Library and Composer

Maybe I am a bit late to get on the Composer bandwagon, but a colleague was adamant about it and convinced me to use Composer in our projects. The benefit of using Composer with your PHP applications is that it will download any library dependencies for you, and take care of the autoloading of classes. So I enabled Composer in my Zend Framework 1 Extension library, with a Zend Framework 1.* dependency. Read on how to get the libraries using Composer!

Continue reading Zend Framework 1 Extension Library and Composer

Enumerations in PHP

In the C programming language, enumerations are handy little data types, which add more linguistic context to the code. They make code more readable, and enforce variables to have certain values. The latter is certainly true, if you have ever assigned string-valued codes to your variables and made a typo somewhere. For example assigning 'white' to the variable $color, and then make a typo somewhere in the code by using 'whiet' or something like that. The program would still compile or run, and not complain at all, while there is something fundamentally wrong with the code.
Continue reading Enumerations in PHP

tmux – an awesome little tool

If you do a lot of programming from the Linux console, you’ll certainly appreciate the power of tmux. It is a terminal multiplexer, which means that it can create multiple virtual consoles within a single terminal shell. Since these virtual consoles are not bound to a terminal, they will keep running in the background, even if you close the terminal you started it in. This means that you can detach these consoles, and re-attach them in another terminal session.

For example, imagine you are working on some project on a development server. You log into that server over SSH from your office, create a tmux session, and do your coding in vim in there. Then you detach the session, and log out from the server to go home. Back at home, you log into the development server again, and re-attach the tmux session, and you see the vim session back where you left it. Not that I suggest you to work from home, but it is a good example of how you can continue your work or session from anywhere.

Tmux in action. Two vim sessions and a MongoDB console.
Tmux in action. Two vim sessions and a MongoDB console.

Another great thing about tmux is that you can create multiple sessions within the same terminal window, and move between them, something like alt-tabbing between terminal windows, except it is much faster and with less visual distraction. An added bonus is that tmux is able to subdivide the visible portion of your terminal window into parts, so you can have multiple virtual consoles, all visible within one window. Very useful if you have lots of screen estate at your command, so that you can code in vim in one, access a MySQL console in another, and doing a sass --watch in yet another, for example. All the information you need, everything visible in the same window, for optimal productivity.

Continue reading tmux – an awesome little tool

Job interviews – how to positively communicate your deafness

I have a profile on LinkedIn, and from time to time I get approached by recruiters, who sometimes have a pretty interesting offer I’d like to know more about. As it is a profile to show the best of you, positivity is an important factor, and that is the reason I do not write that I am deaf – which unfortunately has the negative connotation that you can not hear. However, I add under Languages the fact that I know several sign languages, with “native or bilingual proficiency”. This is one of the examples I’d like to share with you on what to do to improve your position on the job market as a deaf professional.
Continue reading Job interviews – how to positively communicate your deafness

Download Japanese stock market data into R

Traders who are interested in the Japanese market, and use the quantmod library in R to analyze the stock market, will find that there is no source for financial data on the Japanese market. This has changed with quantmod version 0.4-3, in which my code to download stock data from Yahoo! Japan has been added.

At the moment, version 0.4-3 has not been pushed to CRAN yet, but you can still install it from R-Forge. To do this, enter the following in your R console:

install.packages("quantmod", repos="http://r-forge.r-project.org")

Then, when you load the library with library(quantmod), you’ll be able to use the getSymbols() function to retrieve stock data from the Japanese market, using the src="yahooj" parameter. The ticker symbols you need, can be found in the URL of the stock information page on Yahoo! Japan. For example, if you open the Sony stock data page, you’ll see that there is a code=6758.T in the URL. This is your ticker symbol.

So in order to download Sony stock data from January 2013 into R, do the following:

getSymbols("6758.T", src="yahooj", from="2013-01-01")

This will download the data, and put them in a variable called YJ6758.T in your R environment.

For more information on the getSymbols function, you can check the online reference. When the online reference for the getSymbols.yahooj function becomes available, I will link it here, but until then you can check it in the R Help system if you have quantmod 0.4-3 installed.