неділя, 31 липня 2016 р.

10 YouTube Channels for Learning Programming and Coding Online

Want to Learn Free Programming and Coding Course online in 2016. Follow these best Top 10 YouTube Channels and Coding and Programming like a Boss.
You don’t need to pay any type of money to these channels. Just click on play button, sit down and be an coder and programmer.

1. TheNewBoston

Thenewboston has more than 4,200 videos with more than a million subscribers. TheNewBoston is arguably the single best resource for anyone who wants to become a Programmer. The tutorials in this channel cover a range of different programming topics including developing for android and Web design. Bucky Roberts is the guy who manages the channel and teaches the lessons using a teaching style best described as entertaining and simple. His coding tutorials are very easy for almost anyone of any age to grasp. This channel should be on your list for sure.
Things you can learn : Almost all languages

2. Derek Banas

Derek Banas is a Youtube content creator who is very famous for his ” Programming language in a single video “series. Just as the title of that playlist implies, Banas explains the core concepts of a programming language in just one video. Among the content, you will find videos like Learn the Javascript in 30 minutes, Learn the Ruby Programming Language in One Video. This is one of his videos that aims to teach as much as possible in as short a time as possible. He explains a wide range of programming topics with content that includes thorough guides on PHP, along with MySQL and Java. Banas has uploaded over 743 videos and has more than 450,000 subscribers.
Things you can learn : PHP, Java, C++, CSS, HTML, Android, Python, Ruby and assembly language

3. Learn code.academy

Learn code.academy is a great source for anyone who wishes to learn Web designing. In this channel, you will be walked through topics like jQuery and JavaScript in Stern’s efficient and thorough style. The channel’s trailer is one of his most popular videos and provides web development career advice. This video outlines the paths that you can take on your way to becoming a professional web developer along with the order in which you have to learn things. LearnCode.academy has 111 videos and over 193,000 subscribers.
Things you can learn: HTML, CSS, JavaScript (including Node.JavaScript, Angular.JavaScript, Backbone.JavaScript), Server Administration, Deployment Strategies.

4. Treehouse

Treehouse is the official YouTube channel of teamtreehouse.com. Treehouse is an educational resource established with the mission of providing affordable education. Teamtreehouse offers lessons on numerous topics including coding in C# and Python. The videos are delivered in a casual and an easy-to-understand style by a variety of presenters. The channel’s content also includes the Treehouse Show, which is a roundup of web development and programming news along with helpful tips and interviews. Treehouse has over 332 videos and more than 104,000 subscribers.
Things you can learn: PHP, CSS, Javascript,python, swift, C++

5. ProgrammingKnowledge

Here you will find a variety of videos aimed at new programmers. The tutorials here range from an Android tutorial for beginners to Python Java, and C++ tutorials. Among the resources is a C programming tutorial that is considered the best course in that language that you will find anywhere. The channel (along with ProgrammingKnowledge blog) are owned by Yogesh Patel. The sheer number of videos (over 1,000) that are geared towards beginners makes this one of the first channels that anyone who wants to get into coding should bookmark. ProgrammingKnowledge has over 218,000 subscribers.
Things you can learn : Almost all basic languages

6. CSS Tricks

This is the YouTube Channel for CSSTricks.com made by Chris Coyier. The channel shows screencasts mainly about web design related topics, including CSS, Responsive design, SVG and others. There are also screencasts about WordPress Development.
Things you can learn: CSS, JavaScript, WordPress.

7. Tuts+ Web Design

Tut+ creates video courses and tutorials to help you learn and master skills in web design. You can learn much here, including mastering Bootstrap, layout on Photoshop and Dreamweaver, build a responsive layout, implement SASS and Compass, making themes for Tumblr, and more. The in 60 Seconds videos make many topics very simple.
Things you can learn: HTML, CSS, Design (Photoshop, Dreamweaver).

8. Adam Khoury

Here is a free video course from Adam Khoury, that aims to help you in mastering web development technologies such as JavaScript, PHP, SQL, HTML, CSS, and others.
Things you can learn: HTML, CSS, JavaScript, PHP, SQL.

9. Coder’s Guide

On Coder’s Guide, you can learn computer programming more broadly. You can start from HTML/CSS and JavaScript then move on to more advanced topics such as responsive websites and applying WordPress themes with Bootstrap. Also available are videos on Java programming and VisualBasic.
Things you can learn: HTML, CSS, JavaScript, PHP, Java, VisualBasic.

10. Brad Hussey

Check out this channel by Brad Hussey which features free courses on coding for web development. The topics include: building websites from scratch using HTML and CSS, responsive web with Bootstrap, coding dynamic websites using PHP and others. Also included are videos about web hosting, and even how to be a great freelancer.
Things you can learn: HTML, CSS, JavaScript, PHP.

Bonus : CodeGeek

CodeGeek is a channel that talks about events, tutorials, courses and webinars about coding and web development. The contents shared here are related to AngularJs, NodeJS, JavaScript, NodeJS Frameworks, PHP, Python, MongoDb, NoSQL, Couchbase, SQL Server and more.
Things you can learn: JavaScript and frameworks (Angular, NodeJS), PHP, Python, Database (MongoDB, NoSQL and more).

Навчальні YouTube канали з програмування

Перегляд відео - один з розслаблюючих способів навчання. Часто саме після пергляду "туторіала", дt детальне пояснення супроводжується пошаговою інструкцією, допомагає нарешті розібратися в не до кінця зрозумілій темі. До того ж, деякі відеоколекції настільки гарні, що їх просто можна слухати і насолоджуватися грамотним викладом метеріала. Сьогодні я хочу показати (на мою думку, а також редакторів сайту tproger) найкращі YouTube канали, уроки з яких дивитися не тільки продуктивно, а і вкрай приємно.

1. Ocode

Ocode - російскомовний канал, створений для тих, хто ще не став гарним программістом, але пране до цього. Головна особливість - серії відео, в яких пошагово описується процесс, наприклад, створення ігр або грамотного написання сайтів. Не обходиться і без одиничних відео з детальним розбором особливостей розробки софту під тей чи інший пристрій. 

2. MyCodeSchool

MyCodeSchool - навчальний канал, пояснюючий в своїх відео фундаментальні концепти миру комп'ютерних технологій, без яких не обійдеться жоден программіст, а також принципи їх роботи. 

3. Derek Banas

Derek Banas — канал на YouTube, що складається з простих і впорядкованих підказок по всеможливим сучасним МП і технологіям, які будуть у нагоді новачкам. Безліч відео присвячені різним веб-мовами та фреймворкам, але й знайшлося місце для таких мов, як Haskell, C# і Lisp. А ще там є кулінарні рецепти! 

4. Computerphile

Computerphile — канал на YouTube, яких в доступній формі розповідає про комп'ютерну техніку і про все, що пов'язано з нею: архітектурі, системах обчислення, ком'ютерних сетях та інше. 

5. Creativity Tuts

Creativity Tuts - навчальний канал на YouTube, повністю присвячений web-розробці. Він буде вкрай корисний будь-кому, хто хоче вивчати мови, які використовуються у веб-розробці. Також на каналі присутні відео присвяченим різним допоміжним інструментам, такі як Git.

6. LevelUpTuts

LevelUpTuts - величезний канал, повністю складається з коротких відеоуроків, присвяченим, здебільшого, веб-розробці. Буде в нагоді я новачкам в цій сфері, так і вже досвідченим программістам, бажаючим розширити свій кругозор. 

7. Numberphile

Numberphile — канал на YouTube, присвячений математиці та її парадоксам. Тут в легкій ігровій формі розповідається про властивості деяких чисел, особливосях ігр, заснованих на математичних правилах, фігурах, таких як петля Мебіуса та пляшка Кляйна, про число PI та інше. 

8. DevTips

DevTips - канал, на якому викладуються відео на тему web-дизайну та front-end розробки. Кожне відео присвячене конкретній темі і буде дуже корисним, розробникам, бажаючим на високому рівні оволодіти безліччю корисними інструментами.


субота, 30 липня 2016 р.

Top 10 Websites to Learn Coding (Interactively) Online

Gone are the days when programming languages could only be mastered programmers like Bill Gates, who later got to dominate the world by storm. Noweveryone holds the same potential, and the chance to learn and even master programming language easily. Today, we will show you 10 interactive websites that will help you do that.

That’s right, forget about complicated setups and black, cold command prompts that make you want to quit before you start, and say hi to 10 educational websites with instant and interactive lessons that teach you programming languages like HTMLCSS, PHP, Ruby and even iOS. Pick up tips, screencasts and even best practices from industry professionals.
Kickstart the beginning of your new path into programming today!

Codecademy

Codecademy is indisputably the most famous website to teach you to code interactively, thanks to its helpful interface and well-structured courses. Upon visiting the main page, you can already start tasting the programming right away, with its motivating on-screen console. Pick a course that Codecademy offers from Web Fundamentals, PHP, JavaScript, jQuery, Python, Ruby and APIs.
Inside each lesson is a panel that explains necessary code and instruction. Another panel allows you to get your hands dirty by writing acceptable code, then checking if you are doing the right thing. Don’t worry about making mistakes, as both instruction and code panels will warn you of errorsand provide hints. It is as if there’s a kind teacher right beside you.

Code Avengers

Code Avengers is designed to make you love programming. Though it only offers HTML5, CSS3 and JavaScript course for now, each of the courses is carefully designed to truly entertain you while leveling your programming skills painlessly. At the end of each lesson you also get to play a mini game to release your cumulated stress, and keep you going for longer.
Code Avengers has a gradual approach to interactive learning. It does not explain too much knowledge that isn’t essential for beginners, just a bit of code and playful instruction, making things very easy to digest. You also get to play with the code, then see the impact of the changes immediately. It is carefully crafted with the beginner’s comfort in mind.

Code School

After you finished courses in Codecademy or Code Avengers, and you are ready to further expand your capabilities, Code School is the next quality website you should land on. Unlike most interactive learning sites, Code School offers morein-depth courses to train and turn you into an expert with the industry’s best practices.
Overall, the courses are categorized into 4 main paths, and they are:
  • Ruby
  • JavaScript
  • HTML/CSS
  • iOS
    Almost all courses are aggressively polished with impressive design and informative screencasts, though the challenges after the screencast might bit a bit hard for amateurs. Luckily, there are hints and answers to refer to. Whilemost of the offered courses are free, certain ones will require you to spend$25/month to access the entire course including all screencasts and challenges, and also all other courses in Code School.

Treehouse

Treehouse courses are more project-oriented than language-oriented, so they are perfect for novice programmer with a planned purpose, such as building a website, or an application. For example, the Websites course is all about building a responsive website, interactive website or even WordPress theme – a very practical and efficient way to master related languages. Nonetheless, they have released a plethora of foundation courses with a video-then-quiz approach.
For Treehouse, every course is divided into different stages or modules, and beyond every first stage the learner will be invited to pay a monthly subscription fee of $25 to access all courses with 650+ videos, and an exclusive Treehouse Members Forum as a bonus. If you are serious about your programming future, you could subscribe the $49 monthly plan to obtain in-depth interviews with leading industry pros and cutting-edge workshops.

LearnStreet

If you are that kind of personnel who do not fancy playful design and prefer to deal with cold hard codes, LearnStreet is probably your thing. It currently offers JavaScript, Python and Ruby courses at beginner level. With a click on the ‘Start Course’ button you will start the lesson with an exercise, a code interpreter and a glossary panel (for new programming terms).
LearnStreet adopts command prompt-styled code interpreters with human language to explain function and encourage you whenever possible, the kind of command prompt you want for your own local machine. However, the code interpreter could be as rude as standard command prompt, as most of the times it requires you to type in the absolute same code and content it asks for.
Other than that, it’s truly friendly and enjoyable, and most importantly, free.

Udacity

Udacity is the unification of insightful video lectures and improved quizzes to achieve the interactive feel for students, so it’s ideal for those who don’t like to read but rather get explanations from industry professionals such as Google employees.
You will be given a screencast from pros discussing the topics and instructions, then you will take either logic or programming quizzes to strengthen your understanding or forge it into a skill. The good thing about Udacity is it provides more videos than any other site, and the instructors are either real-life professors or industry veterans.
The only pitfall here is most courses are not much related to each other, so Udacity is probably not your starting point, but a virtual university to further your study.

CodeHS

At this point all websites you read here are mainly dedicated to web development and computer science, but CodeHS is one with simple and fun game programming lessons that involve problem solving, JavaScript, animation, data structures, game design and puzzle challenges.
The advantage of CodeHS is it teaches you to think, and solve a problem like a programmer with its first course, Programming with Karel. The lessons are fun as you will learn how to use the code to move the dog, Karel to complete given tasks and puzzles like picking up ball and building a towel. It plants a solid concept of programming and the way it solves the problem systematically in your mind.
Other than the course mentioned above, you must sign up first with $25 per month to continue your learning journey, but it’s a perfect site to learn basic game programming effectively.

Khan Academy

Although Khan Academy’s courses are not as structured as CodeHS, it serves as an open playground for both novice and amateurs particularly interested in learning drawing, animation and user interaction with code. It does not preach any specific programming language, but the code pattern it adopts can be applied anywhere, as a majority of languages share the similar programming pattern.
You can first join the Programming Basics course to watch and learn basic concepts, then explore the given code after the video tutorial to validate your doubts. With Khan Academy, you can save your modification as a Spin-Off for everyone to enjoy and customize. There have been hundreds of spin-offs just from one lesson in one course, so imagine the community size, and the lesson’s effectiveness.

Scratch 2.0

Think CodeHS and Khan Academy are still too hardcore for your child, who has no comprehension beyond basic English? No worries, there is something even easier for your aspiring next-gen programmer, and it’s called Scratch. Previously an offline software that allow kids to create, upload and share their projects proudly, Scratch is now fully online with its 2.0 successor
It’s not about programming though, but a combination of visual blocks of commands that tell assigned objects how to behave, such as telling the cat to move 10 steps, or yell ‘meow’ when it touches the owner’s leg. By using this visual programming method, the young programmers will form a habit of breaking a problem into smaller blocks, and solve them one by one logically.

SQLZOO

Structured Query Language (SQL) is just a language purely designed to store and retrieve data from a database, so imagine the boredom you will experience when programming a warehouse. Yet SQLZOO wants you to learn SQL happily with its interactive interface and smileys.
Since there is really nothing too deep to explain for a straightforward language like SQL, the site will only ask you to replace the variables like city names or population number, and raise the difficulty from that level. One huge let-down will be the shortage of hints, answers and forum, so you are probably doomed if you fail to solve any one of the quizzes, just like old times.

Have you studied at any website we showcased above? How’s the experience?Or have we missed certain interactive learning sites with rich assets for budding programmers? Let us share our experiences and resources to help and inspire each other then!

10 сайтів для тих, хто хоче навчитись програмуванню онлайн

Сьогодні, коли IT-технології досягли небаченого розвитку, вміння програмувати, актуальне, як ніколи. Не важливо, чи ви вчитесь в школі і мрієте стати програмістом, чи вам уже за 30 і ви працюєте зовсім у іншій сфері. Чи вже знаєте якусь мову програмування, чи уявлення не маєте, як виглядає код. Сьогоднішня підбірка сайтів дозволить вам вивчити програмування незалежно від того, хто ви, скільки вам років і чим ви займаєтесь.

codecademy.com

Безперечно, найвідоміший сайт для вивчення програмування. Ознайомлюватись із програмуванням ви почнете практично ж одразу з головної сторінки. Тут ви можете дізнатись принцип навчання та вибарти курс, який бажаєте вивчити – HTML, CSS, JavaScript, jQuery, PHP, Ruby, Python, API. На сайті більше 25 мільйонів користувачів та багато позитивних відгуків від авторитетних видань, що свідчить про велику популярність сервісу.

codeschool.com

Цей сайт пропонує більш поглиблене вивчення програмування. Новачкам не варто починати з цього сервісу, а от тим, хто вже ознайомився із програмування сайт буде дуже корисним. Курси є безкоштовними, але доступ до деяких розділів є платним – 25$ в місяць. Доступні такі курси для навчання – HTML5, CSS, CSS3, jQuery, Ruby, Ruby on Rails, iOS.

threehouse

Ці курси є набагато практичнішими, ніж інші, які просто навчають певній мові програмування. Перед вами ставиться певна задача, наприклад, створити інтерактивний веб-додаток, простий сайт, чи навіть joomla тему. І ви отримуєте всі необхідні знання для виконання завдання. Ресурс буде дуже корисний для починаючих програмістів, перед якими поставлена певна задача. Доступні курси – HTML, CSS, CSS3, JavaScript, jQuery, Ruby, Ruby on Rails, iOS, Android, UX, Database.

codeavangers.com

Сайт створений для людей, які не мають навичок програмування. Тут ви можете вивчати HTML5, CSS3 і JavaScript. Полювання на баги, участь в місії роботів, вирішення задач – навчання захоплююче і цікаве. В кінці кожного уроку вас чекає невелика міні гра, для того, щоб закріпити ваші знання на практиці.

hexlet.org

Онлайн університет, що проводить безкоштовні курси програмування та суміжних дисциплін. Відео-лекції, тести, вправи, домашні завдання та активна спільнота студентів – усе це Хекслет. Тут ви можете вивчати не лише мову програмування, але й такі курси як Введення в логіку чи Структура та інтерпретація комп’ютерних програм. Навчання проводиться російською мовою.

w3schools.com

Тут можна навчатись як інтерактивно, так і знайти підручники та приклади різних задач. Всі курси зручно посортовані по розділах, ви можете перейти саме до того, який вас цікавить. Після завершення курсу можна отримати платний сертифікат.

programmr.com

Онлайн лабораторія програмування із багатьма курсами – PHP, Java, C++, Python  та інші. Основний акцент зроблений на перевірку вже здобутих знань за допомогою інтерактивних вправ. Також тут є конкурси із програмування із грошовими преміями.

htmlacademy.ru

Спеціалізується на Html та СSS. Російськомовний інтерфейс дозволить легко розібратись новачкам. Для того, щоб зрозуміти, які курси і в якому порядкя краще проходити створена зручна карта навчання.
Якщо курси на цих сайтах є заскладними, або ж нудними для вас, спробуйте вивчати програмування граючи цікаві ігри. Наступні сайти пропонують саме таку можливість.

codecombat.com

Хочете навчитись писати код? Вам не потрібні уроки, вам потрібно писати багато коду. Саме так вважають розробники Codecombat. Це справжня мультиплеєрна гра і до того ж весела.

code.org

Цей проект підтримують найбільші компанії – Google, Microsoft, Apple та інші. Основна ідея – зробити програмування зрозумілим і доступним кожному, навіть дітям. Вивчайте програмування на основі улюбленої AngryBirds.

пʼятниця, 29 липня 2016 р.

6 Tools To Be An Effective Web Developer

Over the last few years Rails has helped Ruby’s popularity explode. One of the biggest reasons for this is the time that Rails can save you. By working within a well defined framework a lot of development decisions are simplified and it is easier to be more organized. Throw in some great tools like ORM, Unit Testing, Mocking, and more and you have a powerhouse of developer efficiency and quality.

There has always been and probably always will be feuds over what is the best platform but what I want to show you is that those arguments are mostly irrelevant. Regardless of what platform you choose to develop on there are most of the same tools available in one form or another. The common components, for me anyway, that help me produce high quality code faster and is easier to maintain are a good IDE, easy to use unit testing and mocking frameworks, an ORM, a MVC framework, and a good JavaScript library.
I am a .Net developer by trade and a PHP developer sometimes by choice. I enjoy both environments for different reasons. I am going to talk about each of these components in a bit of detail and explain why I think they are important and then at the end of the article I will provide a list of each of these components for various languages (.Net, Java, PHP, Python, and Ruby). I have decided to only list free or open source tools because they are easy for someone to try out and we all like to save a few bucks.

The Integrated Development Environment (IDE)
To me this is the prime essential. Sure you can program in Notepad and compile with the command line but it will likely take longer and it will require more discipline to stay organized. With a good IDE you have easy project management (all you files grouped together with tabbed browsing), syntax highlighting, compilation (if applicable), and auto complete.
IDE are continuously getting more and more sophisticated and plugins allow for lots more functionality like svn and git management in the IDE.
For me my favorite IDE is Visual Studio. There are some other great programs out there like NetBeans and Eclipse but for whatever reason I have become partial to Visual Studio.

Unit Testing And Mocking
These two items go hand in hand. No application is complete without proper testing. There are plenty of people on both sides of the fence when it comes to testing. I know, I was a skeptic for a along time. It just felt weird to spend time writing code to test the real code I was going to write. Finally I just decided to give it a try and it has changed the way I program. When you are focusing on how to test your code you just write cleaner code and it’s nice to have a quick way to know if the change you just made broke anything.

Object Relational Mapper
If you have ever used an ORM you know that it can save you a huge amount of time. One of the concerns I had before jumping to an ORM was performance. I wanted to know if using an ORM would make my application slower but I was asking the wrong question. I should have been asking whether or not the small performance hit was worth the huge time savings. The answer to that is a definite YES! Rarely in an application will the ORM be the source of poor performance and if it is it can be refactored to improve or you can use straight SQL if need be.
It all comes down to not worrying about performance issues before you have any. Yes it is important to keep performance in mind but using an ORM shouldn’t be anything to worry about.

MVC Framework
MVC has become very popular thanks in part to Rails and it’s revolution in the way we do Web Development. The key component to it’s popularity is that it separates the different concerns of your application into seperate pieces. This separation allows easier testing, better design, and makes your application more maintainable overall.

JavaScript Library
It seems there is a JavaScript library for just about everything these days. I remember not too long ago there were that many and JavaScript use hadn’t exploded yet. A JavaScript library is important to your productivity. The library shouldn’t compensate for poor JavaScript skills, you need a solid foundation, but should compliment a good understanding of it. The library will take care of browser compatibility issues and low level operations letting you focus on getting the job done.

ASP.Net
IDE: Visual Studio 2008 Express
Unit Testing: NUnit
Mocking: Rhino Mocks
ORM: NHibernate
MVC: ASP.NET MVC
JavaScript: jQuery

Java
IDE: NetBeans
Unit Testing: JUnit
Mocking: EasyMock
ORM: Hibernate
MVC: Struts
JavaScript: jQuery

PHP
IDE: PHPEclipse
Unit Testing: PHPUnit
Mocking: PHPMock
ORM: Propel
MVC: Symfony
JavaScript: jQuery

Python
IDE: PyDev
Unit Testing: PyUnit
Mocking: PythonMock
ORM: SQLObject
MVC: Django
JavaScript: jQuery

Ruby
IDE: RadRails
Unit Testing: Test::Unit
Mocking: Mocha
ORM: Sequel
MVC: Rails
JavaScript: jQuery

четвер, 28 липня 2016 р.

6 інструментів для того щоб бути ефективним Web-розробником

За останні декілька років Rails допоміг Ruby досягти великої популярності. Одна з основних причин – це час, котрий Rails може зекономити вам. Працюючи в добре влаштованому фреймворку, багато з рішень, які розроблюються, спрощуються, і стає простіше бути більш організованим. Додайте такі чудові інструменти як ORM, модульне тестування, імітація (заглушки) і т.д. і ви отримаєте потужну установку для ефективної і якісної розробки.

Завжди були і напевно будуть сперечання на предмет кращої платформи, але я хочу вам показати, що більшість з цих аргументів в основному не відповідають дійсності. В залежності від того, яку платформу для розробки ви вибрали, в будь-якій з них доступні практично однакові інструменти, в тому або іншому вигляді. В будь-якому випадку, для мене, загальними компонентами, які допомагають писати якісний код, швидше і простіше в обслуговуванні, являються: хороший IDE, легке у використанні модульне тестування та імітація, ORM, MVC фрейморк і хороша бібліотека JavaScript.
Я працюю .Net розробником на постійній основі і PHP розробником час від часу. Мені подобаються обидва середовища по декільком причинам. Я розкажу про кожний з цих компонентів детальніше і поясню, чому я вважаю їх важливими. Потім, в кінці статті, я запропоную списки кожного з цих компонентів для різних мов (.Net, Java, PHP, Python и Ruby). Я вирішив перерахувати тільки безкоштовні або open source інструменти, тому що їх легко випробувати і всі ми не проти зекономити пару баксів.

Інтегроване середовище розробки (IDE)
На мій погляд, це найбільш суттєве. Звичайно, ви можете писати код в блокноті та компілювати за допомогою командного рядка, але це напевно буде довше і вимагатиме більше дисципліни, щоб залишатися організованим. Хороший IDE дозволяє простіше керувати проектом (всі файли згруповані з можливістю табульованого перегляду), підсвічувати синтаксис, компілювати (якщо це може бути застосовано), а також автокомпліти.
ІDE стають все більш витонченим і дозволяє за допомогою плагінів розширювати функціональність, наприклад, svn та управління git в IDE.
Моя улюблена IDE — це Visual Studio. Існують і інші хороші програми, як NetBeans та Eclipse, але по якійсь причині я віддав перевагу Visual Studio.

Модульне тестування та заглушки
Ці два пункти ідуть пліч-о-пліч. Програма не може вважатися закінченою без відповідного тестування. У багатьох людей виникають суперечки, коли справа доходить до тестування. Я теж ставився до цього доволі скептично. Мені здавалось дивним – витрачати час на написання коду для тестування реального коду, над яким я працював. В результаті, я вирішив спробувати і змінив свій стиль програмування. Коли концентруєшся на тому, як зробити тести на своєму коді, ти пишеш його чистіше, і це добре – мати швидкий спосіб дізнатися чи не зробила дана зміна якісь поламки або порушення.

Об’єктно-реляційне відображення (ORM)
Якщо ви колись користувались ORM, то знаєте, що воно може зекономити вам багато часу. Одним із сумнівів перед використанням ORM була продуктивність. Я боявся, що використання ORM зробить мої програми повільнішими, але я помилявся. Мені потрібно було задатись питанням, чи варта низька продуктивність великої економії часу. Відповідь на це питання – однозначно ТАК! Дуже рідко ORM стає джерелом низької продуктивності програми, а якщо і стає, то можна зробити рефакторинг для її підвищення або використовувати SQL безпосередньо, якщо в цьому буде необхідність.
Все зводиться до того, щоб не турбуватись про задачі продуктивності до того, як вони з’являться. Так, це важливо, піклуватись про продуктивність, але це не повинно вас турбувати при використанні ORM.

MVC фреймворк
MVC став дуже популярним, частково завдяки Rails, і це революція в способі виконання веб-розробки. Ключовим компонентом його популярності являється розділення різних частин вашої програми на окремі шматочки. Це розділення спрощує тестування, покращує проектування і робить ваші програми в цілому більш легкими в обслуговуванні. 

Бібліотеки JavaScript
Здається, що бібліотеки JavaScript сьогодні вже є на всі випадки життя. Пам’ятаю, ще нещодавно їх не було так багато, і JavaScript не був таким розповсюдженим. Бібліотеки JavaScript важливі для продуктивності. Вони не повинні компенсувати невисоке знання JavaScript , необхідна тверда основа, доповнена її гарним розумінням. Бібліотека дбатиме про сумісність з браузерами і операції на низькому рівні, що дозволить сконцентруватися на виконанні роботи.

ASP.Net
IDE: Visual Studio 2008 Express
Unit Testing: NUnit
Mocking: Rhino Mocks
ORM: NHibernate
MVC: ASP.NET MVC
JavaScript: jQuery

Java
IDE: NetBeans
Unit Testing: JUnit
Mocking: EasyMock
ORM: Hibernate
MVC: Struts
JavaScript: jQuery

PHP
IDE: PHPEclipse
Unit Testing: PHPUnit
Mocking: PHPMock
ORM: Propel
MVC: Symfony
JavaScript: jQuery

Python
IDE: PyDev
Unit Testing: PyUnit
Mocking: PythonMock
ORM: SQLObject
MVC: Django
JavaScript: jQuery

Ruby
IDE: RadRails
Unit Testing: Test::Unit
Mocking: Mocha
ORM: Sequel
MVC: Rails
JavaScript: jQuery