It takes talent, knowledge, hard work, and dedication to make great ideas come to life. I've been helping make great ideas happen a long time and am not afraid of a challenge. New technologies get me excited and I love jumping right in and getting things done. I'm passionate for untangling problems and learning the lessons that unfold at each and every project.
Information is power. But just information without the right use is nothing. Information is all around us, a lot of it. Without the technology and automatiaztion of information management we can’t imagine our today’s society. Technology makes life easier and more beautifull, if you know how to use it. Technology gets in any area of human activity, assisting us in much everything we do.
I love almost everything about technology.
Back-end Development
I ensure all my web code meets the highest web standards that works across all major browsers and is S.E.O friendly.
- Node.js
brings JS to back-end development.
It uses an event-driven, non-blocking I/O model that makes it lightweight and efficient,
perfect for data-intensive real-time applications that run across distributed devices.
In combination with npm it is a gread framework for easily building apps and jobs. - PHP:
A very well documented
easy to learn
internet-aware scripting language,
with libraries for any job you might need.
It is free of change, open source and has a big active community which actively moves PHP forward.
It has two big disadvantages compared to Node.js, tho:
1. creates a new process / thread for each connection,
2. you can't reuse code written for client (JS).
These two disadvantages make it more difficult to build high performance web apps running on PHP. - MySQL (as of July 2013) is the world's second most widely used open-source relational database management system.
- I use Unix Shell scripting basically for OS level tasks like: backups, log files archiving, anti DDoS attack protection, server load monitoring and other maintenance tasks.
Server Configuration
I'm experienced with setting up, maintaining, and troubleshooting *inux and windows servers.
- Linux: have long been used as server operating systems, and have risen to prominence in that area. Netcraft reported in February 2010 that six of the ten most reliable internet hosting companies ran Linux distributions on their web servers, two of ten run FreeBSD, and the other two run Microsoft.
- I prefer Windows as a server operating systems only for development.
- Apache is undoubtedly the best known process-based server. You can find it on almost any hosting. One feature developers like about Apache is .htaccess config files.
- NGINX:
fast, stable and easy to use event-based web server for websites of any size.
"Apache is like MS Word, it has a million options but you only need six. Nginx does those six things, and it does five of them 50 times faster than Apache." — Chris Lea on nginx and Wordpress
Here is a tool meant to help you quickly rewrite your .htaccess files to nginx config: http://winginx.com/htaccess. - PHP-FPM: PHP can run as a module of Apache. But for other web servers (like nginx) you need a stand-alone PHP server.
- Email:
I prefer to relay all emails that come to my server to Gmail.
It saves me a lot of time (spam filtering, web-mail UI)
and helps keeping inbox organized.
— With an Google App Engine Account you need to setup MX DNS records on your nameserver to point to Google mail servers.
— Or alternatively just relay emails to any email address outside your host. - Firewall:
Internet is like a public street in downtown - everyone can come across.
DDoS, bruteforce and spy happens all the time in the Internet.
If you are not protected, sooner or later your server will be broken.
Don't forget to setup iptables on your Linux or PF on your BSD operating system. - SSH is a cryptographic network protocol
- FTP
- Named
- CRON Jobs
Design & Front-end Development
I simply love web design, all my work starts from a blank canvas so you will never have a web site that comes from a pre made site template.
- JavaScript
- HTML5
- CSS3
- jQuery
- jQuery UI
- Bootstrap
Concepts
I ensure all my web code meets the highest web standards that works across all major browsers and is S.E.O friendly.
- OOP
- MVC
- MVVM
- Multitier architecture
- Structure / Data separation
- Algorithm Complexity
Code editing
I ensure all my web code meets the highest web standards that works across all major browsers and is S.E.O friendly.
- Notepad++:
Plugins:- Python Script for Notepad++
- NppFTP
- NppSync
- Function List
- JSTools
- Code Alignment
- Location Navigate
- Zen Coding
- TextFX
- PSPad: I used to use it. Your can create plugins using JS or VBS, which is cool, but it has limited support for different charsets
- WinMerge: Great tool for file comparison over network. It can be integrated in WinSCP.
Hosting
I ensure all my web code meets the highest web standards that works across all major browsers and is S.E.O friendly.
- Digital Ocean: VPS on SSD - Developers' choise. You get the clean OS, install only what you need and run it, fast and reliable.
- Amazon S3
Productivity
Other services (technologies) I use!
Tools I use to stay super productive and organized include:
- Synergy : One keyboard for all my PCs
- WinSCP : File manager across the Internet (SFTP, SCP, WebDAV)
- PuTTY : Remotely controll servers over SSH
- Chrome Browser : My favorite Internet Browser and Web Development Tool
- Dropbox : File Sync, Share, Backup - I don't need a memorystick any more.
- SyncThing : File Sync, Share, P2P - very fast, no limits, full control, different OSes.
- WAMP : Apache, MySQL and PHP for MS Windows management bundle
- winginx : Like WAMP, but with nginx instead of Apache, + nodejs and other
- phpMyAdmin : Easy to maintain MySQL DB over HTTP (requires PHP)
- Total Commander: Local Files Manager with lots of features (like file comparison, directory comparison, batch rename etc)
- Team Viewer : Interactively share your screen, keyboard, files
- Gmail : My Favorite Email Service
- Github : Create, colaborate, contribute with your code to the world and find lots of awesome libraries.
- Adobe Photoshop: I use it for graphics creation and manipulation.
- IcoFX : Create and edit .ico files. Every website needs a favicon!
- Google Docs : I use it for all of my docs, always available, no need for any special software, I can even edit my docs from my phone.
- MS Office : Well, you know it - old good software for documnt editing