jQuery is being criticized these days for leading to the "big main method problem" and to DOM centric code. In this text I explain what the critique is all about, and how you avoid these problems.
jQuery AJAX Tutorial - Updated
I have extended my jQuery AJAX tutorial to cover most of jQuery's AJAX features, and to be up-to-date with the latest version (AJAX changed in version 1.8.0). There are still some very fine grained features that are not covered, but I will get around to that.
The Java ThreadLocal class is used to create variables that are local to the thread executing the code. Thus, two threads executing the same code may have different values stored inside the same ThreadLocal instance. This tutorial explains how Java ThreadLocal works.
jQuery Deferred Objects
Deferred objects in jQuery is how jQuery handles asynchronous code and callbacks. Deferred objects can be a bit complex when you first read about them, but once you understand them they are pretty simple, yet very useful. This tutorial explains how deferred objects in jQuery work.
Java volatile Keyword Tutorial
I have expanded my Java Concurrency tutorial with a tutorial on the Java volatile keyword which is used to assure that variables are read and written from and to main memory and not CPU / thread caches.
AngularJS $watch() , $digest() and $apply()
This new text in my AngularJS tutorial explains the $scope functions $watch() , $digest() and $apply(). These functions are the core of the AngularJS data binding system.
AngularJS $scope Hierarchy
This small addition to my AngularJS tutorial explains the AngularJS $scope hierarchy.
CSS Gradients Tutorial
You can fill HTML elements with gradients using CSS 3. The browsers and W3C have finally reached a shared standard syntax which is supported by IE, Chrome (Windows + Android) and Firefox.
CSS Opacity Tutorial
You can set opacity / transparency of HTML elements with the opacity CSS property. This new tutorial explains how.
CSS Border Images
In CSS 3 you can use images as borders for HTML elements. I have added a section to my CSS border tutorial explaining how to use border images.
CSS Column Layout
From CSS 3.0 it is possible to have the browser divide text up into columns, just like in a newspaper. This new tutorial in my CSS trail explains how.
CSS Text Shadow
I have added a section about text shadows to my CSS text styling tutorial.
CSS Web Fonts Tutorial
I have added a small tutorial about web fonts to my CSS tutorial. Web fonts enable us to use external fonts in our websites. Web fonts are embedded in their own file, just like an image. Thus a web font can be downloaded and used on your website for rendering text.
CSS Media Query Tutorial
I have added a short tutorial about CSS media queries to my CSS tutorial trail. Media queries enable you to apply different CSS rules depending on the device that views your HTML page.
Open SSL for Web Servers
This new tutorial explains how use OpenSSL to create a private key and certificate signing request, and finally how to get a certificate, for use with SSL / TLS / HTTPS on a web server.
I have started a tutorial about Nginx, the high performance web server. So far the tutorial covers how to install Nginx on Ubuntu, how to start it, restart it and where to find the configuration files. This tutorial will be updated in the future with information about using Nginx as reverse proxy, configuring SSL and more.
Software Entrepreneurship Guide
I have started writing a guide about software entrepreneurship. The guide will contain an overview of what it means to be a software entrepreneur, with links to where you can read more in depth. By now it contains the basics, but I will expand the guide over time.
Ubuntu as Web Server
Using Ubuntu Linux as a web server is reasonably easy. I have assembled a small guide to help you get started. I will expand this guide over time - especially with links to where you can read more about e.g. Nginx, Jetty etc.
More mobile friendly tutorial website !
I have spent quite some time making the tutorial site more mobile friendly. It now loads 3-5 seconds faster on mobile, and the layout actually fits the screen now. Give it a try on your mobile!
SVG rect Tutorial Updated
I have updated my SVG rect (rectangle) tutorial to show more of the options you have for drawing rectangles in SVG. I have also added a video version of the tutorial (see the tutorial).
CSS Link Styling
This new tutorial explains how to style links with CSS, including how to remove the default underlining, how to change the link color, how to style the link when the mouse hovers above the link, and how to style links to look like buttons.
CSS border-radius - Rounded Corners
I have updated my tutorial on CSS borders with a section on the border-radius CSS property. The border-radius CSS property is used to create rounded corners on HTML elements. A very, very useful feature!
CSS float Tutorial
I have added a tutorial about to make HTML elements float left and right using the float CSS property.
CSS Form Styling
I have added a new text to my CSS tutorial about styling forms and form fields.
CSS position Tutorial
This new tutorial explains how to use the CSS position property to position HTML elements relatively to where they would normally have been located, at a fixed position inside the browser window, or combinations of that.
SVG Circle Tutorial Updated
I have updated my SVG circle tutorial to show more of the styling options you have for styling stroke and fill for circles. I have also added a video version of the tutorial.
CSS Image Styling Tutorial
This new text in my CSS tutorial explains how to style images (img elements) via CSS. You can set the margin, border, padding, width, height, max-width, max-height, min-width and min-height of an image via CSS. The max-width property is especially handy when implementing responsive images.
CSS Table Styling Tutorial
You can style HTML tables with CSS. For instance, you can set the width, height, margin, padding (of table cells), borders, text alignment horizontally and vertically and more. This new tutorial explains how to set all that.
CSS Background Images
CSS enables you to set background images on HTML elements. This new tutorial explains the background image features available in CSS 2.1. The tutorial will be updated later with the CSS 3.0 features.
CSS display Tutorial
This new tutorial explains how you can use the display CSS property to control if HTML elements are rendered as part of the normal text flow, or as separate blocks.
CSS List Styling
CSS has a set of properties targeting HTML lists (ul + ol elements). This new tutorial explains the options you have for styling lists with CSS.
This addition to my CSS tutorial explains how to specify color values in CSS, including hexadecimal RGB, decimal RGB, RGBA and HSL (new in CSS 3.0).
CSS Text Styling
You have several CSS properties available for styling the text rendered inside HTML element (p, div, span, li etc). This new text in my CSS tutorial explains all the possibilities you have for styling text with CSS.
When more than one CSS rule targets the same HTML elements, which CSS styles are then applied to the elements? That depends on the precedence of the CSS rules. This tutorial explains how CSS precedence works.
I have added a CSS selectors tutorial to my CSS tutorial, explaining CSS 1.0, CSS 2.0 and CSS 3.0 selectors including CSS pseudo classes and CSS pseudo elements.
CSS Tutorial Started
I have started a CSS tutorial. Rather than being the typical SEO optimized reference, this tutorial is intended to be read like a book (like most of my tutorials), so you can learn CSS from scratch if you need to. The tutorial is still very short, but it will grow over the next weeks.
CSS Properties and CSS Rules
CSS properties are used to style different aspects of an HTML element. CSS rules group one or more CSS properties together with a CSS selector which specifies what HTML elements are to be targeted by the CSS rule.
Using CSS in HTML
This text explains the three ways you can use CSS inside your HTML documents.
AngularJS Minification Proof Dependency Injection
I have added a section to my AngularJS Modularization and Dependency Injection tutorial about how to specify dependencies in a way that is minification safe, meaning that it still works when you minify your AngularJS code.
AngularJS Internationalization Tutorial
I have added a small tutorial about internationalization to my AngularJS tutorial series. Internationalization in AngularJS supports formatting dates and currencies according to local standards.
Java Lambda Expressions - Updated
I have updated the Java Lambda expression tutorial with a section on lambda parameters, explaining the syntax for declaring parameters for a lamdba expression with zero, one or multiple parameters.
AngularJS routes enables you to create bookmarkable URLs into your AngularJS application. The route features enable your app to show different HTML templates depending on the route (URL) chosen, and extract parameters from the route too. This latest addition to my AngularJS tutorial explains how AngularJS routes work.
My AngularJS modularization and dependency injection tutorial has been updated with a section on providers, the most flexible type of service factory in AngularJS, and a short section on constants.
Java Collection Streams
Streams in Java 8 is an addition to the Java Collection API which makes it possible to process collections of objects in a more functional programming style.
This tutorial explains the basics of how streams work.
Java 8 Lamdba Expressions Tutorial
I have released the first version of my Java 8 lambda expression tutorial. There is enough for you to start learning how Java 8 lambda expressions work. I will add more advanced details to it in a near future.
I have updated my AngularJS views and directives tutorial with a section on filtering. Filters are used to modify data before it is written to the HTML page, or to filter or sort arrays.
AngularJS Dependency Injection
I have updated my AngularJS tutorial with a text explaining how to use Angular's dependency injection mechanism with values, factories and services.
Actionable Web Design
A responsive web application should be actionable, meaning that it is easy to get to all the most commonly used actions in the web app. This text explains the idea in more detail.
Touchable Web Design
The responsive, mobile friendly web design tutorial has been extended with a text about making touchable web design. Touchable means that links and menus are easy to touch with a finger.