Web GDE Deck

Deck | Stream

Ire Aderinokun

Your first performance budget with Lighthouse

I asked on Twitter the other day how many people had created and enforced a performance budget for a

Tue, 28 May 2019 07:24:03 GMT

Removing duplicate objects from an Array (is hard)

Let’s say we have an array of objects such as the following:const books = [ { name: "M

Tue, 12 Mar 2019 07:55:12 GMT

Tips for making interactive elements accessible on mobile devices

The Web Content Accessibility Guidelines (WCAG) is a set a guidelines for how to make websites access

Tue, 12 Feb 2019 07:37:32 GMT

Revisiting the abbr element

A few weeks ago, I wrote about how to make the abbr element work for touchscreen, keyboard, and mouse

Tue, 05 Feb 2019 07:04:17 GMT

What self.skipWaiting() does to the service worker lifecycle

The ServiceWorker.skipWaiting() method is a life saver. It ensures that any new versions of a service

Tue, 29 Jan 2019 08:02:00 GMT

What is tree shaking and how does it work?

When Javascript applications get to a certain size, it’s helpful to separate the code into modules. H

Tue, 22 Jan 2019 07:37:00 GMT

Use the :lang pseudo-class over the lang attribute selector for language-specific styles

The content of HTML documents can be in many different languages.To specify the primary language of a

Wed, 16 Jan 2019 07:01:00 GMT

A Siri Shortcut to Generate PWA Icons and Web App Manifest

If you've been following along with my daily blogging challenge, this is my final article! I've done

Tue, 25 Dec 2018 07:12:51 GMT

Understanding the Virtual DOM

I’ve recently been writing about what exactly the DOM and the shadow DOM are and how they differ. To

Mon, 24 Dec 2018 08:06:21 GMT

My CSS Reset/Base

Since writing about the state of CSS resets in 2018, I’ve had a few people ask what my modified CSS r

Fri, 21 Dec 2018 07:39:43 GMT

Making the abbr element work for touchscreen, keyboard, and mouse

The <abbr> element is used to denote and define an acronym. For example, if we want to write th

Thu, 20 Dec 2018 07:54:28 GMT

Handling broken images with the service worker

A few years ago, I wrote about how we can use css to style broken images. The technique leveraged on

Wed, 19 Dec 2018 07:49:26 GMT

A one-line solution to highlighting search matches

I’ve recently been making some improvements to the search page of this blog, and wanted to implement

Tue, 18 Dec 2018 07:45:00 GMT

There’s no reason to use pointer-events for HTML elements

UPDATE: Some people have pointed out some genuinely great use cases for this property which I've list

Mon, 17 Dec 2018 08:20:13 GMT

Using aria-live

Many web pages today have their content dynamically changed using Javascript. An example of this is t

Fri, 14 Dec 2018 07:52:00 GMT

Rachel Andrew

Announcing Smashing Print Magazine

Life at Smashing Magazine never stops throwing new surprises and challenge

Thu, 25 Jul 2019 09:11:00 +0000

Grid, content re-ordering and accessibility

I have long been concerned about the potential accessibility problems that

Tue, 04 Jun 2019 11:11:00 +0000

CSS Grid subgrid lands in Firefox Nightly

For the CSS Grid fans who have been following along, last night the subgri

Thu, 23 May 2019 06:08:00 +0000

A design pattern solved by subgrid

I’ve been playing with this early implementation of the subgrid feature in

Tue, 07 May 2019 22:03:00 +0000

Getting involved with the web platform

I spoke at An Event Apart yesterday, you can see my slides and resources h

Tue, 07 May 2019 08:54:00 +0000

CSS Subgrid News and demos

A couple of weeks ago I spoke at Frontend NE in Newcastle, a big part of m

Tue, 16 Apr 2019 18:48:00 +0000

Are nested grids like nested tables?

A thing I keep hearing, and especially when talking about subgrid is, “nes

Fri, 12 Apr 2019 18:29:00 +0000

Upcoming CSS Layout Workshops

I am increasingly spending my time giving CSS workshops, both in-house for

Tue, 12 Mar 2019 07:06:00 +0000

CSSconf EU, Grid Layout, and me

I don’t apply to many Call for Papers right now, because I just get so bus

Thu, 21 Feb 2019 10:36:00 +0000

More logical properties

Last year I published a post on Smashing Magazine introducing Logical Prop

Tue, 19 Feb 2019 10:56:00 +0000

Rachel Nabors

Joining the React Core team in London

I’ll be joining the React team in London May 28, 2019! Writing docs, building demos, tending communit

Mon, 01 Apr 2019 00:00:00 UTC

A counterintuitive way to increase diversity in tech

Want to increase diversity in tech but frustrated at society's lack of progress? Consider a career in

Thu, 01 Mar 2018 00:00:00 UTC

2017 Reading List: sailing forward in rough waters

I read a lot of books in 2017 to help me chart a course for 2018. If you are a little like me , some

Fri, 19 Jan 2018 00:00:00 UTC

So long, farewell, Microsoft!

I've decided to move on from Microsoft's Web Platform Team. What comes next? Let's find out! But firs

Mon, 18 Dec 2017 00:00:00 UTC

Donating profits this weekend to my hometown Bookmobile

This holiday weekend all my courses are half off and the profits will bring books to people all over

Fri, 24 Nov 2017 00:00:00 UTC

Pam Selle

Using “replace” in go.mod to point to your local module

If you want to say, point to the local version of a dependency in Go rather than the one over the web

Tue, 30 Jul 2019 17:40:40 +0000

Thoughts on Emergent Strategy

I thought Emergent Strategy was a business book, or maybe a management book, likely because I saw tha

Tue, 23 Jul 2019 00:20:20 +0000

Notes from the North America GDE Summit

Over the weekend, I went to Toronto to meet with other folks from the North American region of the Go

Mon, 22 Jul 2019 16:09:09 +0000

Collaborating on live code audio using Troop

Whilst in Argentina, I asked the TOPLAP (the international organization around live coding) chat abou

Thu, 18 Jul 2019 16:28:11 +0000

I went to a hackerspace in Argentina and heard about cool art and tech things!

For the last two weeks, I was in Argentina! I did one week of workcation (working remotely whilst tra

Tue, 09 Jul 2019 18:02:30 +0000

Thoughts on Go slices and beginner’s mind

Beginner’s mind can be such a gift, if I can get over myself to enjoy it. I think some of the b

Mon, 17 Jun 2019 15:04:42 +0000

Video review: The Economics of Open Source

Published today, CJ Silverio gave a talk at the recent JSConf EU (with an amazing video turn around t

Mon, 03 Jun 2019 20:34:31 +0000

Let’s Go Video: Whats New in VS Code for Go

This week, I watched a video on VS Code, which is timely since I recently started using it. As a remi

Thu, 23 May 2019 13:42:53 +0000

Let’s Go Video: Observability in the Kitchen: Improve Your Breadmaking Skills w/OSS!!

For this week’s video, in honor of it being Never Graduate Week, I went hunting for a !!con vid

Tue, 14 May 2019 14:12:37 +0000

Let’s Go Video: Simplicity in Go

This week, I picked a talk by Katherine Cox Buday, since the speaker in last week’s video refer

Wed, 08 May 2019 23:08:14 +0000

Deborah Kurata

Object-Oriented Programming Fundamentals in C#: 2019 Update

My “Object-Oriented Programming Fundamentals in C#” course takes you, step by step, throu

Mon, 11 Mar 2019 17:12:44 +0000

Angular Routing Course Update (for v7)

This post identifies the latest changes to the “Angular Routing” Pluralsight course.HistoryThe first

Thu, 20 Dec 2018 20:18:54 +0000

Angular: Getting Started Course Update (for v7)

This post identifies the latest changes to the “Angular: Getting Started” Pluralsight course.HistoryA

Thu, 08 Nov 2018 22:58:25 +0000

Angular Reactive Forms Course Update (for v7)

This post identifies the latest changes to the “Angular Reactive Forms” Pluralsight course.HistoryThe

Wed, 07 Nov 2018 07:18:43 +0000

Angular: Getting Started Course Update (for v6)

This post identifies the latest changes to the “Angular: Getting Started” Pluralsight course.HistoryA

Thu, 12 Jul 2018 00:19:28 +0000

“Angular NgRx: Getting Started” Problem Solver

This blog post supports the sample code for the “Angular NgRx: Getting Started” course  on Pluralsigh

Mon, 23 Apr 2018 19:58:26 +0000

“Angular Component Communication” Problem Solver

This blog post supports the sample code for the “Angular Component Communication” course on Pluralsig

Tue, 19 Dec 2017 19:34:41 +0000

Filtering in Angular

One common requirement is to filter a list of information based on user entered criteria. This post c

Tue, 29 Aug 2017 20:09:25 +0000

Angular: Getting Started Course Update (for v4.3)

This post identifies the latest changes to the “Angular: Getting Started” Pluralsight course.HistoryA

Thu, 10 Aug 2017 20:59:04 +0000

Angular Learning Path

The content of this post is based on Angular version >= 2.x unless explicitly stated otherwise.Are

Fri, 16 Jun 2017 23:06:05 +0000

Jecelyn Yeen

Remy Sharp

Build free code & testing ES module imports

A bit of a mouthful of a post title, but I can assure my future self this post will be worthy of publ

Fri, 16 Aug 2019 10:00:00 +0000

An fd trick

If you followed my CLI improved and I'm a fan of the fd command which I'm able to use for a mass git

Tue, 13 Aug 2019 00:00:00 +0000

Redux: Lazy loading youtube embeds

There's a great pragmatic post on dev.to (that Jeremy's link feed put me on to) on how best to embed

Fri, 09 Aug 2019 12:00:00 +0000

Predictably Random

The concept of random is pretty interesting when you think about it from a computer's point of view,

Tue, 06 Aug 2019 12:00:00 +0000

Ninja

This is my personal blog and sometimes I'll publish very personal things. It's cathartic for me, but

Wed, 31 Jul 2019 21:30:00 +0000

Buy the coffee

Having been asked my advice on starting a company (usually of one), my advice tends to start with: bu

Tue, 30 Jul 2019 15:00:00 +0000

User agent tunnel vision

Yesterday I published a post that I'd been writing for a while as I considered and compared three web

Thu, 25 Jul 2019 12:00:00 +0000

Progressive Enhancement

This post was originally written in 2015, but upon re-reading it today, it still (just about) holds u

Wed, 24 Jul 2019 12:00:00 +0000

Analytics, logs and metrics

Netlify just recently launched a simple analytics offering for $9 per site per month. It's a great ad

Tue, 23 Jul 2019 00:00:00 +0000

Elsewhere 2019 w28

A few interesting links I came across this week.Ethical Web PrinciplesFound on July 12, 2019 at 17:01

Sat, 13 Jul 2019 14:00:00 +0000

A thought: Privacy Pollution

This post is very much a stream of thought from a small handful of conversations and triggered by a t

Thu, 27 Jun 2019 13:00:00 +0000

Scheduled and draft 11ty posts

This post explains how you can add scheduled publishing to your 11ty blog (with a bonus for drafts).B

Wed, 26 Jun 2019 15:05:36 +0000

Send Outgoing Webmentions

In a recent Twitch session I decided to add Webmentions to my blog, specifically in the flavour of sh

Tue, 18 Jun 2019 14:00:00 +0000

Reduce spread and the path to unique

As modern JavaScript language features land more and more support I find myself using more and more o

Sat, 15 Jun 2019 00:00:00 +0000

Ejecting Disqus

Running a routing performance check on my blog I noticed that in the list of domains being accessed i

Tue, 11 Jun 2019 00:00:00 +0000

Slide Show Karaoke

During a jsconf.eu break as I attempted to lighten Katie Fenn of her npm stickers, I was unwittingly

Mon, 10 Jun 2019 00:00:00 +0000

Firebase + Lambda + Zeit now

Super niché I know. I've been playing with Zeit's v2 now platform, and in particular I wanted to acce

Wed, 05 Jun 2019 00:00:00 +0000

All I want for Christmas is…

…my two front teeth. A song, that for reasons beyond my comprehension, went around my childhood house

Tue, 21 May 2019 00:00:00 +0000

Compiling binaries for Netlify

There's the odd occasion that inside of a Netlify build (or maybe a lambda function) that I've wanted

Mon, 20 May 2019 00:00:00 +0000

How I got AWS running inside Netlify

In a recent attempt to move away from Google analytics I wanted to be able to run the AWS command lin

Sat, 18 May 2019 00:00:00 +0000

Bare Import Cost

This post is about import in JavaScript. This post, I'm afraid doesn't have any grand solutions or ev

Fri, 10 May 2019 00:00:00 +0000

All your envs in a row 🦆🦆🦆

If you've used Zeit's Now platform you'll know to get your environment values readable by your code,

Wed, 24 Apr 2019 00:00:00 +0000

How to put your kid in Scratch

I was asked by a few parent friends how I put my kid in Scratch, so here's my guide to how to put (an

Mon, 15 Apr 2019 00:00:00 +0000

Code highlighting: server or client?

Recently I posted a quick poll to Twitter asking:Do you think syntax highlighting (in blog posts, exa

Tue, 09 Apr 2019 00:00:00 +0000

How I failed the

A real bug bear of mine is when JavaScript gets in the way of browsing a page on the web. Simple, but

Thu, 04 Apr 2019 00:00:00 +0000

Twitter without tracking

Recently I've been using the DuckDuckGo browser extension that gives me a web site privacy score but

Tue, 02 Apr 2019 00:00:00 +0000

Slashed URI

Trailing slashes in URIs, or URLs or UDI (surprisingly). What the heck do they actually mean, do they

Mon, 25 Mar 2019 10:15:07 +0000

#Web30

This week marks the 30th birthday of the web. I've had my own involvement in this momentous date in h

Wed, 13 Mar 2019 11:25:18 +0000

Excavating a user agent

Warning: this is a tale of geek's own adventure into the dark depths of old webby stuff that really d

Mon, 04 Mar 2019 12:53:05 +0000

WWW: Where's the Writable Web?

This post is based on my experience and thoughts, and is not backed up by research, aka: speculative,

Thu, 21 Feb 2019 16:14:24 +0000

CERN day 5: the end

What a packed week, what an honour and privilege to be part of, and what a superb job we did.It's all

Mon, 18 Feb 2019 09:04:59 +0000

CERN day 4

Another long day from 9am to 10pm coding, conferring, braining, hacking and edging towards our goal:

Fri, 15 Feb 2019 08:46:06 +0000

CERN day 3

The day's work has really started to intensify, particularly as the pressure mounts (certainly in my

Thu, 14 Feb 2019 08:42:29 +0000

CERN day 2

Though my body clock says it 7:30pm it feels like it's midnight—it's been a long, busy, interesting a

Wed, 13 Feb 2019 10:05:36 +0000

CERN day 1

This marks the beginning of a week long adventure in Geneva Switzerland at CERN, to work on a hack pr

Tue, 12 Feb 2019 09:49:02 +0000

Should I add another dependency?

This is, by far, not the first post on this topic, but it's something that I've considered for years

Fri, 01 Feb 2019 14:02:48 +0000

A Toe in TypeScript

I was watching a short video recently where the author was using TypeScript, except the only TS'ing t

Wed, 23 Jan 2019 09:45:06 +0000

Books I read in 2018

In 2018 I read 37 (or so) books. Some of which were graphic novels which arguably I wouldn't include

Mon, 07 Jan 2019 16:24:25 +0000

Books I read in 2017

I starting reading "properly" at the end of 2016 and carried on into 2017. At this stage, I

Sun, 06 Jan 2019 16:24:17 +0000

My 2018

With the 12 year of this blog's existence, I present to future me: stuff that happened in 2018 that 2

Mon, 31 Dec 2018 15:08:55 +0000

memfetch

The web API fetch is superbly simple (compared to its predecessor: XMLHttpRequest) but during develop

Mon, 24 Dec 2018 13:08:56 +0000

How many days until...

Time is a fun and challenging technical problem to solve, and most recently I had to answer the quest

Tue, 18 Dec 2018 13:37:29 +0000

Ways to extract slides

When you run events, once everything is over, it's nice to be able to share the slides both as a sing

Thu, 29 Nov 2018 10:02:20 +0000

ffconf v10: updates & my experience

It's been just over two weeks since the 10th ffconf ran. I'm only just closing up the final bits of t

Mon, 26 Nov 2018 12:57:30 +0000

Debugging vanishing text in shell scripts

Did you ever get a weird bash scripting issue where a variable would "randomly" eat charact

Mon, 29 Oct 2018 08:23:25 +0000

Curation all the way

Curation is massively important to ffconf, and as of last week, ffconf now has a complete line up of

Fri, 05 Oct 2018 14:27:47 +0000

Peer Deps

Just using my blog to share a little tip for future me that current me keeps forgetting. Over the yea

Thu, 27 Sep 2018 20:44:53 +0000

Midlife

40. The big one. Though, I think television and movies have a lot to answer for that one. I wrote abo

Thu, 13 Sep 2018 00:34:00 +0000

8 years on

This is a stream of thought that I need to get out of me, and on to my personal blog. I apologise if

Thu, 30 Aug 2018 10:19:37 +0000

Uri Shaked

Maurizio Mangione

If you follow the thread starting from the quoted tweet, you will read the statement “you can’t…

If you follow the thread starting from the quoted tweet, you will read the statement “you can’t even

Wed, 24 Oct 2018 12:14:18 GMT

Are Web Components a thing?

“brown block lot” by Tim Johnson on UnsplashTalking to people that are not really into Web Components

Tue, 23 Oct 2018 14:55:06 GMT

Polymer Testing Tips

In my previous article, I wrote about how to get started with unit testing in Polymer. The goal was t

Tue, 05 Jan 2016 14:11:07 GMT

Polymer Unit Testing

In the front-end world, testing is a weird topic. Developers know how much testing is important, but

Fri, 14 Aug 2015 16:14:28 GMT

Todd Motto

Wassim Chegham

One way you could implement this is to have an intent dedicated to receiving the French words and…

One way you could implement this is to have an intent dedicated to receiving the French words and hav

Sun, 11 Aug 2019 21:40:18 GMT

I’m afraid there is no option to wait for an infinite period.

I’m afraid there is no option to wait for an infinite period. Both Dialogflow and Assistant will time

Sun, 11 Aug 2019 21:27:51 GMT

I’m joining Microsoft

For the love of the open source communityhttps://twitter.com/jeffsand/status/913915537742233600Hello

Fri, 26 Apr 2019 14:46:23 GMT

Hi, in order to send the order via email, you will need to have a server to do it.

Hi, in order to send the order via email, you will need to have a server to do it. For that, you will

Fri, 05 Apr 2019 20:49:46 GMT

Sorry to hear that. Please read the disclaimer at the top of the article.

Sorry to hear that. Please read the disclaimer at the top of the article.

Wed, 27 Mar 2019 09:35:02 GMT

You mean the seventh!?

You mean the seventh!?PS: could you also please use our official press kit for the logo? The logo you

Sat, 09 Mar 2019 09:04:36 GMT

Awesome! Don't forget to use the discount code rffr1 when buying the desk ;)

Awesome! Don't forget to use the discount code rffr1 when buying the desk ;)Oh! And by the way, y

Wed, 30 Jan 2019 22:26:59 GMT

Jorge Cano

Hey :) I need update this article… is really old (1 year :) ) … but if you have the project in…

Hey :) I need update this article… is really old (1 year :) ) … but if you have the project in github

Thu, 04 Apr 2019 12:44:52 GMT

Angular Lazy loading

Angular Lazy loading sin el router 😱Seguramente leíste como mínimo un articulo sobre “performance en

Wed, 27 Feb 2019 11:58:17 GMT

todo depende de donde estes y que tipo de meetup te guste o tecnologia… si hay un gdg seguro cubran…

todo depende de donde estes y que tipo de meetup te guste o tecnologia… si hay un gdg seguro cubran a

Mon, 14 Jan 2019 09:13:45 GMT

todavia no, espero este año hacer mucho mas de test con angular

todavia no, espero este año hacer mucho mas de test con angular

Mon, 14 Jan 2019 09:12:36 GMT

thanks for all talks Shai :) … you are the best :D It’s time for new destinations and I’m very…

thanks for all talks Shai :) … you are the best :D It’s time for new destinations and I’m very happy

Mon, 31 Dec 2018 18:18:53 GMT

here I have a functional example =>https://github.com/jorgeucano/angularboliviaschematics

here I have a functional example =>https://github.com/jorgeucano/angularboliviaschematics

Mon, 10 Dec 2018 13:57:25 GMT

Si no lo haces perdes vos y la gente que te podria escuchar en una charla, revisa meetups y GDG…

Si no lo haces perdes vos y la gente que te podria escuchar en una charla, revisa meetups y GDG cerca

Thu, 06 Dec 2018 16:51:07 GMT

Deberías colaborar en proyectos open source

Hace algunas semanas en las oficinas de google de sunnyvale se hosteo el “Google Developer Expert Sum

Thu, 06 Dec 2018 12:28:35 GMT

No tenemos uno propio, nos juntamos en el de Meetupjs entra a la web https://meetupjs.com.ar

No tenemos uno propio, nos juntamos en el de Meetupjs entra a la web https://meetupjs.com.ar y ahí va

Wed, 05 Dec 2018 13:47:04 GMT

Atrévete, vos podes!

Muchas veces leo cosas de como la gente se “atreve” a hacer algo y me pone muy contento y ayer lei de

Wed, 05 Dec 2018 12:46:19 GMT

Abdelrahman Omran

سافر .. كمصري ممكن تسافر ٦٢ دولة بدون فيزا 🥳

#سافر كمصريين، احنا مش محتاجين فيزا (أو أونلاين فيزا) عشان نسافر لـ ٦٢ دولة، تعرف كدا؟! معندكش حجة

Tue, 04 Jun 2019 03:45:17 +0000

خدمة “فُرِجَت” من منصة “أبشِر” للإفراج عن الغارمين

من كام يوم تم إطلاق خدمة إلكترونية جديدة في السعودية في غاية الروعة والإنسانية .. ربنا يبارك للقائمين

Sat, 04 May 2019 06:11:43 +0000

Good day, good year! Write something everyday..

It’s good to review, evaluate, and plan future resolutions after every step in your life, and

Tue, 01 Jan 2019 10:00:55 +0000

ترشيحاتى لأفضل ما قرأت فى ٢٠١٧

دى بعض الكتب التى أعجبتنى وأعطيتها تقييم مرتفع .. وأنصح غيرى بقرائتها لما فيها من فائدة .. أكثرهم فائ

Wed, 20 Jun 2018 15:36:07 +0000

The Untitled Podcast – Season #1 – a bit of history

Recently, me Abdelrahman Omran and my friend Eslam Salem a security researcher and founder of Shiel

Wed, 20 Jun 2018 11:42:40 +0000

Build Actions for Your Community → October June 1st, 2018

As part of our ongoing event series “Build Actions for Your Community“, Google Cloud De

Mon, 04 Jun 2018 14:51:52 +0000

Build Actions for Your Community → Cairo May 25th, 2018

Preface Yesterday’s session (or should we say today’s session? read to know!) was different, it was

Sat, 26 May 2018 21:05:28 +0000

G Suite – Not all clouds are created equal

To answer a frequent question I get from people about the main differences between G Suite and Micr

Wed, 07 Mar 2018 18:00:01 +0000

علوم مقاصد الشريعة – الفقه، والعقيدة، والتزكية

#خريطة_ذهنية علوم مقاصد الشريعة، ثلاثة: ١- الفقه (لضبط جسد الانسان / الأفعال) .. هذا هو الإسلام &#

Sun, 18 Feb 2018 16:00:59 +0000

An open letter to the Japanese Ambassador in Egypt

Monday December 4th, 2017 To whom it may concern, dear Sir / Madame, I’m Abdelrahman Omran, s

Mon, 04 Dec 2017 13:19:24 +0000

Jonathan Belcher

Google Cloud Functions and Serverless Path Parameters

I’m trying to transition an express node service to using the serverless framework and Google C

Fri, 27 Oct 2017 17:21:06 +0000

Worlds Fastest Store, well sort of

I have been working on building a PWA front end for WooCommerce.  I saw the Polymer Shop repository a

Thu, 26 Oct 2017 20:03:01 +0000

Things you should do in Barcelona

Beer:Garage Beer Company – Brew pubBierCab – Bar and beer store.  Amazing selection in bo

Mon, 24 Apr 2017 14:52:33 +0000

Coding Style Guides

If you know me you probably know that I sincerely believe that for a project to be successful you nee

Mon, 06 Feb 2017 02:08:56 +0000

Making Coffee and Web Apps

I drink a lot of coffee. I write a lot of JavaScript.  This is about my journey from drip to my perfe

Fri, 06 Jan 2017 18:55:23 +0000

Martin Splitt

Reading local files with JavaScript

JavaScript does not have direct access to the local files due to security and privacy.We can offer th

A look at how I build stuff

The process is similar to how I do side projects in general.

My Google I/O 2019 wrap-up

One part of this was to give two presentations:Google Search: state of the union together with John -

SEO codelabs for developers

![Try the codelabs right from your browser!](/images/post-images/codelabs.png)We came up with two com

Google I/O - let's meet!

On Tuesday I will most likely hang around the community lounge and the web sandbox :)

2018: a retrospective

I contemplated we'd see more progress for WebXR, which is the case. The TPAC meeting had a whole

A new adventure

I started in April and had a great time during "Noogler onboarding" where I was introduced

Writing an x86 "Hello world" bootloader with assembly

After booting, the BIOS of the computer reads 512 bytes from the boot devices and, if it detects a tw

Firefox day 5: A race

I've opened a session with four tabs:FacebookTwitterA Stackoverflow threadA Github pageAn Archilo

Firefox day 4: Goin' up the country

I've found a few niceties besides the fact that apps open links with Firefox in the background an

Firefox day 3: Details

When switching browsers three days ago, I forgot to install an ad blocker.I have to say I'm surpr

Firefox day 2: First few cracks

Today I happened to visit my own website, geekonaut.de and noticed a few interesting glitches on my p

My Firefox month: Day 1

I will try Firefox 54 on my laptops and phone for a monthFirefox Sync provides me with seamless acces

How I approach side projects

Start with something you don't know. Research & write down the resultResearch just enough to

CORS - a guided tour

The browser enforces the Same-origin policy to avoid getting responses from websites that do not shar

Bits and bytes in JavaScript

when dealing with binary data or communicating with hardware, you may find yourself needing ways to m

JavaScript in parallel

JavaScript is single-threaded and long-running scripts make the page unresponsiveWeb Workers allow ru

Understanding different number systems

The fact that we use a number system with 10 symbols (0-9),aka "Base 10" or decimal is an a

2016: The year in review

This year I finally finished the draft of my book on Polymer!If things work out, it will be in print

HTML, DOM and JavaScript unraveled

The web platform has started out with HTML to allow users to share documentsand link them in a user f

The overwhelming web

Web Development can be pretty strange these days.On the one hand we tell beginners that they need ALL

Slick and slf4j MDC logging in Scala

Multi-user applications need log messages to retain context, so the situation can be examined on a tr

Five rules to stay sane and efficient when handling downtimes

Downtimes, Crashes, Incidents, System Failures - they have many names, but most people involved with

Five rules to stay levelheaded and efficient when handling downtimes

Downtimes, Crashes, Incidents, System Failures - they have many names, but most people involved with

JSON RPC 2.0 - for simple and powerful APIs

To my surprise a contender in the field of API protocols is yet unknown: JSON-RPC 2.0.A standard sinc

Maxim Salnikov

Loiane Groner

What is new in Java 12 (for Developers)

Java JDK 12 was released on March 19 as part of the new release cicle (a new Java version every 6 mon

Mon, 25 Mar 2019 11:35:12 +0000

Setting up MySQL on Oracle Cloud + Connecting with MySQL Workbench

In this article we will learn step by step how to setup a MySQL instance on Oracle Cloud. MySQL is th

Mon, 18 Mar 2019 10:00:12 +0000

CRUD REST API Using Spring Boot 2, Hibernate, JPA, and MySQL

In this article we will learn how to develop a CRUD RESTFul API with Spring Boot 2 + JPA/Hibernate an

Sat, 26 Jan 2019 10:00:12 +0000

Deploying a Spring Boot REST Application to Oracle Cloud

In this article we will learn how to develop a simple Java Spring Boot 2 REST application and deploy

Mon, 05 Nov 2018 10:00:12 +0000

Upgrading to Angular v6: Step by Step

Angular v6 was released on May 3rd and now we can focus on upgrading our projects to the new version.

Fri, 11 May 2018 14:35:12 +0000

Continuous Integration with Angular CLI + Travis CI + Firebase Hosting + Greenkeeper + Github

In this article we will learn how to automatically deploy an Angular CLI project to Firebase hosting

Mon, 04 Sep 2017 09:35:12 +0000

Angular Tips: Formatting Dates with a Custom Date Pipe (dd/MM/yyyy)

In this article we will learn how to create a custom Date Pipe with Angular. Using Angular default

Wed, 30 Aug 2017 11:35:12 +0000

How to Add Bootstrap to an Angular CLI project

In this article we will learn how to setup an Angular project with Bootstrap 3 or Bootstrap 4. Update

Fri, 11 Aug 2017 11:35:12 +0000

Angular: Hide Navbar Menu from Login page

In this article we will learn two approaches to hide the Navbar Menu when displaying the Login page i

Wed, 09 Aug 2017 11:30:12 +0000

Angular Reactive Forms: trigger validation on submit

In this article we will learn different approaches of validating all form fields when user clicks on

Fri, 04 Aug 2017 10:35:12 +0000

Angular Tips: Avoiding duplication of RxJS operator imports

Updated post Update May 2018: since Angular v5, we can use RxJS Pipeable Operators, which makes easie

Tue, 01 Aug 2017 10:35:12 +0000

Getting Started with Angular Material 2

This article will show you how to setup your Angular project (v2+) using Angular Material 2. Update D

Sun, 30 Jul 2017 11:35:12 +0000

O que uso pra gravar os screencasts - 2016

Olá pessoal, De vez em quando as pessoas perguntam o que uso pra gravar as aulas que disponibilizo no

Mon, 04 Jan 2016 11:35:12 +0000

Todos os ebooks da Packt por US$ 5 - inclusive os meus!

Olá pessoal, Vim compartilhar uma super dica com vocês. Tem uns 3 anos que a Packt (editora com a qua

Fri, 18 Dec 2015 12:41:11 +0000

Meus ebooks Sencha e JavaScript com 50% de desconto!

Olá pessoal, A Packt entrou em contato e está oferecendo 50% de desconto nos meus livros no formato e

Mon, 09 Nov 2015 20:10:46 +0000

40+ resources to learn Sencha ExtJS 6

This is a list of 40+ resources to learn Sencha ExtJS 6. It contains presentations, tutorials, exampl

Sun, 02 Aug 2015 02:08:02 +0000

[Curso Java Básico - Orientação a Objetos] Correção Exercícios Aula 27: Classes e métodos

Oi pessoal, Hoje vamos conferir a correção dos exercícios de laboratório da aula 27 do Curso de Java

Thu, 11 Jun 2015 10:30:24 +0000

[Curso Java Básico - Orientação a Objetos] Aula 27: Classes e métodos com parâmetros

Olá pessoal, Vídeo/Screencast de hoje: aula 27 do curso gratuito de Java! Na aula de hoje vamos apren

Wed, 03 Jun 2015 13:56:48 +0000

Packt Free Learning: 1 ebook gratuito todos os dias (pra sempre)!

Oi pessoal, A Packt (editora pela qual publico meus livros) de vez em quando lança campanhas de 1 eb

Tue, 02 Jun 2015 19:59:15 +0000

[Curso Java Básico - Orientação a Objetos] Aula 26: Classes e métodos com retorno

Olá pessoal, Vídeo/Screencast de hoje: aula 26 do curso gratuito de Java! Na aula de hoje vamos apren

Mon, 01 Jun 2015 13:50:48 +0000

[Curso Java Básico - Orientação a Objetos] Aula 25: Classes e métodos simples

Olá pessoal, Vídeo/Screencast de hoje: aula 25 curso gratuito de Java! Na aula de hoje vamos aprender

Wed, 27 May 2015 10:30:56 +0000

[Curso Phonegap / Cordova] Aula 07: Phonegap + Android no Windows: Configurando Ambiente

Olá pessoal, Vídeo/Screencast de hoje: aula 07do curso gratuito de Phonegap e Cordova. Na aula de hoj

Mon, 25 May 2015 11:20:01 +0000

[Curso Java Básico - Orientação a Objetos] Correção Exercícios Aula 24: Classes e atributos

Oi pessoal,Hoje vamos conferir a correção dos exercícios de laboratório da aula 24 do Curso de Java g

Wed, 20 May 2015 10:30:51 +0000

[Curso Java Básico - Orientação a Objetos] Aula 24: Classes e atributos

Olá pessoal, Vídeo/Screencast de hoje: aula 24 do curso gratuito de Java! Na aula de hoje vamos apren

Mon, 18 May 2015 10:30:37 +0000

[Mobile Conf 2015] Palestra e Curso Phonegap com Ionic no Rio de Janeiro dias 28, 29 e 30 de Maio

Olá pessoal, Dias 28 e 29 de maio estarei no Rio de Janeiro para ministrar 2 workshops de Phonegap/Co

Thu, 14 May 2015 14:55:50 +0000

[Curso Java Básico] Aula 23: Como debugar no Netbeans

Olá pessoal, Vídeo/Screencast de hoje: aula 23 do curso gratuito de Java! Na aula de hoje vamos apren

Wed, 13 May 2015 10:30:36 +0000

[Curso Java Básico] Aula 22: Como debugar no Eclipse

Olá pessoal, Vídeo/Screencast de hoje: aula 22 do curso gratuito de Java! Na aula de hoje vamos apren

Mon, 11 May 2015 10:30:48 +0000

[Curso Java Básico] Aula 21: For Each (for melhorado)

Olá pessoal, Vídeo/Screencast de hoje: aula 21 do curso gratuito de Java! Na aula de hoje vamos apren

Thu, 07 May 2015 12:19:46 +0000

[Curso Java Básico] Correção Exercícios Aula 20 (Matrizes/Arrays Multidimensionais)

Oi pessoal, Hoje vamos conferir a correção dos exercícios de laboratório da aula 20 do Curso de Java

Tue, 05 May 2015 10:00:22 +0000

Congresso TI 2015: Palestra Online e Gratuita sobre Phonegap para iniciantes

Olá pessoal, Vim aqui falar para vocês que essa semana começa o a segunda edição do Congresso TI. O e

Mon, 04 May 2015 11:55:26 +0000

Phil Nash

How to start a Node.js project

Sometimes I write blog posts to remind myself what I’ve learned and sometimes I write them because so

Thu, 10 Jan 2019 00:00:00 +0000

2018 in review

I’ve never been one for writing a review of my year. This year I’ve found myself not only reading, bu

Thu, 03 Jan 2019 00:00:00 +0000

Service workers: beware Safari's range request

You’ve implemented a service worker to cache some assets. Everything is working well, your service wo

Tue, 23 Oct 2018 00:00:00 +0100

Techniques for animating on the canvas in React

I recently experimented with audio visualisation in React on the Twilio blog. While I meant to teach

Thu, 27 Sep 2018 00:00:00 +0100

Implementing one time passwords in Crystal

Crystal is still a young language, there aren’t a lot of libraries available yet. For some this could

Tue, 04 Sep 2018 00:00:00 +0100

Git commands to keep a fork up to date

I’ve seen the following tweet about git making its way around Twitter recently:I ❤️ Git. But honestly

Tue, 21 Aug 2018 00:00:00 +0100

Spring clean your dev machine

Development machines can build up such a lot of cruft. Old versions, oudated programs and unused cach

Sun, 27 May 2018 00:00:00 +0100

Use the web share API easily with web components

I’m a fan of the web share API but I was not happy with my initial implementation of the API. It was

Wed, 25 Apr 2018 00:00:00 +0100

CSS: select first-of-class with the subsequent sibling combinator

There are a whole bunch of CSS selectors available to web developers, but sometimes there’s still not

Sun, 18 Mar 2018 00:00:00 +0000

gzip a file in Ruby

At the start of the year I looked into how to better compress the output of a Jekyll site. I’ll write

Sun, 25 Feb 2018 00:00:00 +0000

Gokulakrishnan Kalaikovan

Tool I use for web development

Why this post?As a web developer, I use a lot of tools (new & old), utilities & some tips f

Sun, 04 Aug 2019 00:00:00 GMT

Fix Mojave Rendering Issue

https://carbon.now.shToday after updating macOS from High Sierra to Mojave in

Sun, 21 Oct 2018 00:00:00 GMT

Add danger.js to your OSS in 5 mins

What is danger.js anyway?DangerJS runs during your CI process, and helps your team to automate certai

Tue, 16 Oct 2018 00:00:00 GMT

Prettier - Opinionated Code Formatter

What is prettier?Prettier is an opinionated code formatter. That’s all.✅ Language support JavaScript

Fri, 05 Oct 2018 00:00:00 GMT

Introduction to GraphQL

😼 So what is GraphQL exactly?A query language for your API.GraphQL gives the power to ask for exactly

Mon, 20 Aug 2018 00:00:00 GMT

Comparison of HTTP and HTTP/2

This comparison blog post is to show why you should move from HTTP to HTTPS and why you should add su

Sun, 30 Apr 2017 00:00:00 GMT

Best Practices for Push Notifications

As the web is moving forward very fast and now we can do almost everything on the web which can be do

Mon, 20 Mar 2017 00:00:00 GMT

What is accessibility?

Accessibility means letting the user navigate and interact with a website by any means. Let it be a k

Tue, 07 Mar 2017 00:00:00 GMT

How To Setup Webpack 2

Webpack is module bundler for modern web applications.It is a highly configurable and easy to use.Red

Fri, 03 Feb 2017 00:00:00 GMT

CSS4 Selectors

A CSS selector is like patterns which are used to select and style the pattern matching elements. We

Sun, 28 Feb 2016 00:00:00 GMT

Web Performance Optimization

An average user stays in your site if the page loads in < 1000ms. In 2014, an average page size

Mon, 15 Dec 2014 00:00:00 GMT

Chrome DevTools

Google chrome is one of the fastest browser around and using chrome devTools for development is simpl

Fri, 12 Sep 2014 00:00:00 GMT

Jurgen Van de Moere

A 10-minute primer to Service Workers

In this article, we have a look at what service workers are, why they are used in modern web developm

Sun, 12 May 2019 21:45:28 GMT

How to update an existing project in your Nx workspace to use Jest as a test runner instead of Karma

Nx v6.3 introduced the ability to use Jest as a unit test runner. When you generate a new library or

Sun, 10 Feb 2019 19:00:00 GMT

How to use environment variables to configure your Angular application without a rebuild

In February 2016, I published an article on how to configure your AngularJS 1.x application using env

Sun, 12 Aug 2018 14:55:23 GMT

The 7-step process of Angular router navigation

There are many great articles and books available on how to use and configure Angular router. In cont

Sat, 26 Aug 2017 14:54:52 GMT

A 10 minute primer to JavaScript modules, module formats, module loaders and module bundlers

Modern JavaScript development can be overwhelming.When working on a project, you may wonder why all t

Tue, 21 Feb 2017 05:49:29 GMT

Review of Angular 2 Master Class by Thoughtram

On July 6 and July 7, 2016 I attended the Angular 2 Master Class by Thoughtram in the Showpad offices

Fri, 09 Sep 2016 05:17:47 GMT

Review of Angular 2 Workshop by Brecht Billiet

On June 29 and June 30, 2016 I attended Brecht Billiet's Angular 2 Workshop at Holiday Inn Ghent Expo

Thu, 08 Sep 2016 04:54:17 GMT

Simple metaphor to easily understand and remember how token-based authentication works

In this modern era, software is often using token-based authentication so that parts of the software

Wed, 20 Apr 2016 19:05:35 GMT

How I feel about Angular 2

A few weeks ago I was privileged to spend time with Pascal Precht while he was preparing his talk for

Tue, 29 Mar 2016 14:51:01 GMT

How to configure your AngularJS application using environment variables

Most AngularJS applications contain logic.And thus most AngularJS applications typically have a confi

Wed, 24 Feb 2016 14:21:21 GMT

How to properly integrate non-AngularJS libraries in your AngularJS application

There may be times when you need to use a non-AngularJS library such as lodash or underscore in your

Sat, 02 Jan 2016 07:47:54 GMT

How I optimized Minesweeper using Angular 2 and Immutable.js to make it insanely fast

In my previous article I showed you how to build Minesweeper using Angular 2 and Immutable.js. You ca

Fri, 27 Nov 2015 13:46:44 GMT

How to build Minesweeper using Angular 2 and Immutable.js

This is the first in a series of articles on Angular 2. If you want me to send you a quick note when

Wed, 25 Nov 2015 10:45:13 GMT

Thoughtram Angular Master Class review

On August 25th and 26th I attended the 2-day Angular Master Class by thoughtram at Silversquare Bruss

Fri, 28 Aug 2015 05:04:17 GMT

How to use areas and border states to control access inside an Angular application with ui-router

UI-router is awesome!You can create nested states and do all kinds of fancy stuff.But what if you nee

Tue, 11 Aug 2015 09:48:15 GMT

Filip Bech-Larsen

Juri Strumpflohner

It’s time to say thank you to the Angular CLI Team!

Nowadays, you can create, and run a new Angular project in minutes (!! 🔥). It really just depends

Tue, 13 Aug 2019 11:37:24 +0200

Publish a Docker container from Bitbucket to Google Cloud Container Registry

Automation is key, I cannot repeat that often enough. In this article we’re going to explor

Wed, 07 Aug 2019 14:55:26 +0200

Challenging the Testing Pyramid

Writing automated tests has become like a standard practice in software development and (should b

Tue, 16 Jul 2019 12:00:00 +0200

Update to Angular Version 8 now!

Let’s dive into the latest Angular version 8 that just got released. We’ll quickly ex

Mon, 03 Jun 2019 12:00:00 +0200

Create Code Snippets for Visual Studio Code with ease

When writing software, even when writing a blog post using Markdown, there are some pieces you ha

Thu, 23 May 2019 12:00:00 +0200

Angular 8 and the Future - NGConf 2019 Roundup

I’m not at NGConf 2019 (unfortunately). But I’m following along very closely with the

Wed, 01 May 2019 17:30:08 +0200

Lazy load Angular Components

Lazy loading is hot recently and for a good reason. It’s all about speed! The Chrome team at Go

Mon, 29 Apr 2019 14:00:00 +0100

Introduction to Angular Elements

You didn’t yet get into Angular Elements? Then it’s time to give it a go! In this art

Sun, 28 Apr 2019 12:00:09 +0200

Setup your Workstation for JavaScript Development

You want to learn about modern web development with JavaScript? Maybe Angular? Well, then it&rsqu

Fri, 26 Apr 2019 16:10:05 +0200

Productive Git for Developers

With this Egghead course, I aim at a different goal. You will walk through a series of scenarios

Tue, 16 Apr 2019 10:00:00 +0100

RxJS finalize operator to execute logic on Observable termination

In this article we’re going to have a look at the RxJS finalize operator. To have a practic

Mon, 04 Mar 2019 10:00:00 +0100

A step-by-step guide to integrating a third party widget with Angular

When working on a complex project you will inevitably face the situation when you have to use a 3rd p

Thu, 14 Feb 2019 21:24:36 +0100

Display Server Side Validation Errors with Angular

Input Validation is a big topic when it comes to forms. And even more in those large, enterprisey

Thu, 07 Feb 2019 20:30:31 +0100

Explore Angular Router's runGuardsAndResolvers

Learn how we can use new options introduced for the runGuardsAndResolvers setting for the Angular

Thu, 31 Jan 2019 18:39:51 +0100

Guarantee Event Order with RxJS

When you create dynamic UIs, you have to deal with async stuff a lot. Most often they are triggered

Wed, 16 Jan 2019 15:03:22 +0100

It's not just Standing Up

I’m highly convinced that the hardest part of software development is people. Here are some

Fri, 11 Jan 2019 10:53:38 +0100

Learn Angular Router for Real-World Applications

Finally, it's out!!! My Angular router course is now available on Egghead, go grab it :)

Thu, 06 Dec 2018 01:00:00 +0000

Better Redirects in Angular Route Guards

Angular version 7.1 not only comes with bugfixes but includes also a bunch of new features. In this p

Thu, 29 Nov 2018 01:00:00 +0000

Egghead Lesson: Simple caching with RxJS

This is the accompanying article for my latest Egghead video lesson on caching data in Angular by lev

Sun, 11 Nov 2018 01:00:00 +0000

Egghead Lesson: Avoid memory leaks when subscribing to RxJS Observables in Angular Components

RxJS is a first class citizen in every Angular application. It's extremely powerful, but there are al

Mon, 29 Oct 2018 01:00:00 +0000

Simple State Management with RxJS’s scan operator

State management is a big topic currently in frontend development. For a reason: frontend frameworks/

Wed, 10 Oct 2018 00:00:00 +0000

My Journey replacing Promises with RxJS

In this post I’m going to tell you, step-by-step, how I used RxJS to refactor a method that was based

Mon, 01 Oct 2018 00:00:00 +0000

[object ErrorEvent] thrown by Karma in Angular Unit Tests

I’m pretty sure when you’ve already come across this exception: `[object ErrorEvent] thrown` when you

Thu, 26 Jul 2018 00:00:00 +0000

In-depth: How do CDK Portals work?

In the last article we were exploring how to leverage the Angular Material CDK portals for placing so

Tue, 26 Jun 2018 00:00:00 +0000

Dynamic UI with CDK TemplatePortal and DomPortalHost

Ever wanted to place some piece of UI dynamically from one component to another? But the component th

Sat, 26 May 2018 00:00:00 +0000

Extend the *ngIf Syntax to Create a Custom Permission Directive

So our use case is to create a directive, which shows/hides elements on the page based on our current

Wed, 21 Feb 2018 01:00:00 +0000

Add Mocha reporter for Karma unit tests to your Angular CLI project

Every Angular CLI generated project comes already with a test setup in place using Karma. I think the

Wed, 14 Feb 2018 01:00:00 +0000

Create a CD pipeline with Angular, GitLab and Firebase

I’m a huge fan of automating all the stuff. Even if you’re a very precise and organized person, you’r

Thu, 08 Feb 2018 01:00:00 +0000

Create a ng-true-value & ng-false-value directive for Angular

If you come from AngularJS (v1.x) I'm pretty sure you remember the `ng-true-value` and `ng-false-valu

Thu, 01 Feb 2018 01:00:00 +0000

Compile-time vs. Runtime configuration of your Angular App

When you develop a bigger application, chances are quite high that you need some kind of configuratio

Mon, 22 Jan 2018 01:00:00 +0000

Looking back on 2017

2017 has been a great year, lots of changes for me and new things 😅. Time for some retrospective. (Wa

Sat, 30 Dec 2017 01:00:00 +0000

Three new Angular Courses to celebrate end of the Year 2017

2017 has been AMAAAAZING (more in a later post..maybe). So before the year ends let's celebrate it wi

Wed, 27 Dec 2017 01:00:00 +0000

Use Dynamic Components to render HTML for 3rd party libraries

Dynamic components in Angular are very powerful and help you solve the trickiest problems. In this ex

Wed, 15 Nov 2017 01:00:00 +0000

Demystifying dynamic Forms in Angular

Heared about reactive Angular forms? Maybe even about dynamic forms? Never tried because you think it

Wed, 04 Oct 2017 00:00:00 +0000

Understand How to Style Angular Components

Here it is!!! 🔥 🔥 🔥 My very first Egghead.io course 😃. Learn everything you need to know about stylin

Tue, 08 Aug 2017 00:00:00 +0000

Intercept HTTP Requests in Angular

Angular version 4.3.1 introduced one important new feature: the new HTTP client. Not only did it brin

Tue, 01 Aug 2017 00:00:00 +0000

Create a dynamic tab component with Angular

The purpose of this article is to learn about the concept of dynamic components and template referenc

Thu, 27 Jul 2017 00:00:00 +0000

Enhanced *ngIf and *ngFor in Angular version 4.0.0

Ever wanted an "else" statement in *ngIf? It's finally here, together with some other nice improvemen

Tue, 13 Jun 2017 00:00:00 +0000

Talks: Web meets Mobile powered by Angular

I had the pleasure to bring 3 amazing speakers on board for our Software Craftsmanship South Tyrol Me

Thu, 23 Mar 2017 01:00:00 +0000

Tuning Angular's Change Detection

I recently prepared some course material for a modern web development workshop, which besides the nic

Wed, 15 Mar 2017 01:00:00 +0000

Angular Modules vs ES6 Modules

I often see people being confused when it comes to understanding Angular Modules vs. ES6 Modules. Thi

Thu, 09 Mar 2017 01:00:00 +0000

Video Course: Learning Angular Components

I just released the 2nd edition of my video course for PacktPub on "Learning Angular components". Co

Mon, 23 Jan 2017 01:00:00 +0000

Talk: Testing with Angular - Some Recipes

I recently wanted to dive deeper into testing Angular applications, in specific on how to write prope

Wed, 11 Jan 2017 01:00:00 +0000

Easy SSL support for your Jekyll Blog with CloudFlare

It's 2017 and if you didn't switch to a secure SSL connection yet, it's definitely time to do so. Thi

Wed, 04 Jan 2017 01:00:00 +0000

NG-BE Conf and the Angular Community

I was lucky enough to be part of the Belgium's first Angular conference: NG-BE conf. It was by far th

Sat, 31 Dec 2016 01:00:00 +0000

Interviewing Igor Minar and Adam Bradley for AngularBeers

For the last meetup of 2016, AngularBeers organized an AMA session with Igor Minar (lead dev of Angul

Mon, 19 Dec 2016 01:00:00 +0000

Ok.. let me explain: it's going to be Angular 4.0, or simply Angular

At the 8th and 9th of December 2016 was NG-BE, Belgium’s first Angular conference. Igor Minar (Angula

Tue, 13 Dec 2016 01:00:00 +0000

Configure Ahead of Time (AoT) for your Angular app using the Angular CLI

In our previous video we learned how to use the Angular CLI to create our first Angular application.

Sat, 03 Dec 2016 01:00:00 +0000

Safe Navigation Operator, RxJS and Async Pipe tinkering

RxJS? Safe Navigation operator? Async pipes? Not sure what I'm talking about? In this article I'd lik

Wed, 16 Nov 2016 01:00:00 +0000

Custom validators in template driven Angular forms

Angular version 2+ has two different kind of Forms API, the reactive and template driven approach. In

Mon, 14 Nov 2016 01:00:00 +0000

Data bind radio button lists with Angular

Assume you have a simple list or table of elements, each row having a radio button. The user can sele

Thu, 10 Nov 2016 01:00:00 +0000

Configure a proxy for your API calls with Angular CLI

In this article (video included!) we will learn how to setup your Angular development server and how

Mon, 07 Nov 2016 01:00:00 +0000

Let's create your first Angular app

Angular got released and so it's the perfect time to try it out. I totally understand it might be dif

Wed, 05 Oct 2016 00:00:00 +0000

Angular: Using the JSONPipe for debugging

A powerful way of debugging, especially templates, in Angular 1 was the JSON pipe (or filter) which c

Wed, 21 Sep 2016 00:00:00 +0000

Angular: How do I get a reference to the window object?

Remember the $window object in Angular 1? Turned out to be quite useful from now and then. But what a

Tue, 20 Sep 2016 00:00:00 +0000

Angular: How do I register an event listener on document?

I recently got asked by an Angular community member on Twitter how one can register an event on the d

Tue, 20 Sep 2016 00:00:00 +0000

Angular version 2.0.0 released!!

It was at the ng-Europe, on the 22-23 September 2014 when the Angular team came with a huge surprise:

Thu, 15 Sep 2016 00:00:00 +0000

Angular Forms - a first look

Angular gets a brand new Forms API. It's fresh out of the compiler and since there's not much documen

Sat, 06 Aug 2016 00:00:00 +0000

RxJS first steps - Subject and ReplaySubject

I'm not sure you already heard about RxJS or Reactive Programming in general. There's currently a ver

Thu, 30 Jun 2016 00:00:00 +0000

From ng-controller to components with Angular 1.5

The web has moved forward and so should you. Learn how to upgrade your Angular 1 app from a more MV*

Mon, 27 Jun 2016 00:00:00 +0000

Angular 2+ - A Getting Started Guide for Beginners

Since about half a year, I'm organizing a local Meetup group around Software Craftsmanship. I recentl

Mon, 06 Jun 2016 00:00:00 +0000

Learning Angular 2 Directives

Finally 😆, I managed to finish and publish my very first video course: "Learning Angular 2 Directives

Wed, 27 Apr 2016 00:00:00 +0000

Fine grained change detection with Angular

Today, while working on my Angular screencast series (announcement coming soon), I discovered a stran

Thu, 07 Apr 2016 00:00:00 +0000

Debugging Angular Applications from the Console

There have been some quite useful articles for how to debug Angular 1.x applications from the browser

Wed, 10 Feb 2016 01:00:00 +0000

Learning Angular: Creating a tabs component

This is a follow-up article of thoughtram's excellent article on developing a tabs component with Ang

Tue, 02 Feb 2016 01:00:00 +0000

Learning Angular: Conditionally add styles to an element

Here we're going through a couple of ways to conditionally apply some styles to a DOM element in Angu

Mon, 25 Jan 2016 01:00:00 +0000

About Personal Productivity

Thinking aloud about productivity, what I'm currently doing about it and where I think I need to impr

Sun, 24 Jan 2016 01:00:00 +0000

Multi Content Projection aka Multiple Transclusion

(adsbygoogle = window.adsbygoogle || []).push({}); If you’re an AngularJS developer, I’m

Thu, 14 Jan 2016 01:00:00 +0000

Improve your Angular 1.x startup time

(adsbygoogle = window.adsbygoogle || []).push({}); This neat and simple trick originally appeared ab

Mon, 14 Dec 2015 01:00:00 +0000

Componentizing Workflow for Angular

(adsbygoogle = window.adsbygoogle || []).push({}); $1 Yesterday I wrote a tweet about how I usually

Thu, 10 Dec 2015 01:00:00 +0000

Follow-up: EvolvingPublication

Martin Fowler just published a "Bliki" article on his site about EvolvingPublication. This is a conce

Fri, 04 Dec 2015 01:00:00 +0000

REST Api Design - Resource Modeling

Important note: this is not something I've written up by myself, but it's rather a summary, some high

Tue, 03 Nov 2015 01:00:00 +0000

Screencast: TypeScript - Setup Your Working Environment

(adsbygoogle = window.adsbygoogle || []).push({}); First of all, this is my first screencast ever, s

Tue, 03 Nov 2015 01:00:00 +0000

Angular Connect London - Day 2

I’m lucky enough to be able to attend AngularConnect here in London. This article is my noteboo

Tue, 20 Oct 2015 00:00:00 +0000

Angular Connect London - Day 1

I’m lucky enough to be able to attend AngularConnect here in London. This article is going to b

Mon, 19 Oct 2015 00:00:00 +0000

Release your libs like a pro!

Automate, automate, automate. That's what ultimately is our job, right? We automate the tedious proce

Thu, 08 Oct 2015 00:00:00 +0000

ES2015 - Jump Start

Yes, this is another article about learning ES2015 (known as ES6). It’s my journey of learning

Wed, 26 Aug 2015 00:00:00 +0000

Preparing for Angular 2

I’m sure you heard about Angular 2 and that it will be totally different. Forget everything you

Mon, 06 Jul 2015 00:00:00 +0000

Learning Angular: Testing $q promise resolves with Sinon and Jasmine

(adsbygoogle = window.adsbygoogle || []).push({}); This article shows a brief example on how to prop

Tue, 30 Jun 2015 00:00:00 +0000

Learning Angular: Expose an API on your directives

Ever wanted to not only create a nice, visually appealing directive or web component, but to also pro

Wed, 17 Jun 2015 00:00:00 +0000

Guide as in Mountaineering

Yes, I happen to deal with architecture, software design and technology. And yes, I’m entitled

Sat, 06 Jun 2015 00:00:00 +0000

GitHub: be Social, Contribute, Learn

GitHub revolutionised the open source world by building - IMHO - the first true social coding site. I

Thu, 04 Jun 2015 00:00:00 +0000

Jersey WebResource - Header don't get appended

Yesterday I ran into a strange problem when using the Jersey WebResource class for doing HTTP calls:

Thu, 14 May 2015 00:00:00 +0000

Nepal: Help for Anil Joshi

This is not the kind of post you usually find on my site here. But it’s the story of a good fri

Fri, 08 May 2015 00:00:00 +0000

Migrate from TFS to Git

Are you using TFS and would like to switch to a distributed VCS like Git? Well then this article migh

Wed, 25 Mar 2015 01:00:00 +0000

Learning Angular: Set your language culture before any UI is displayed

In this article I briefly outline an issue I had, namely to make sure that my language’s locale

Tue, 03 Mar 2015 01:00:00 +0000

Learning Angular: Verifying whether a function has been passed to my directive's isolated scope

When you create isolated directives, you usually use the scope property to define your directive's ex

Thu, 26 Feb 2015 01:00:00 +0000

Learning Angular: Access directive scope variables from directive controllers and vice versa

Angular directives can have a separate, isolated scope, which is even the suggested approach most of

Mon, 26 Jan 2015 01:00:00 +0000

Backup your Win8 computer to your Synology NAS

I love my Macbook Pro which I’ve been using now for about 6 years. At work I’m a PC user

Sun, 18 Jan 2015 01:00:00 +0000

Notes: Microservices by Martin Fowler

I just watched Martin Fowler’s talk about Microservices at XConf. Here are some of my notes and

Sat, 03 Jan 2015 01:00:00 +0000

Happy new year 2015!

A very short post as I’m preparing to go out for celebrating New Year’s Eve. 2014 has bee

Wed, 31 Dec 2014 01:00:00 +0000

Kudos for your site - powered by Firebase

I don’t quite remember, guess it was about more than a year ago when I came across a Svbtle-hos

Mon, 29 Dec 2014 01:00:00 +0000

Learning Angular: Useful utility functions

Today a very short post. Angular has a series of utility functions which you should definitely take a

Fri, 28 Nov 2014 01:00:00 +0000

Learning Angular: Unit Testing $watch expressions

Today I wanted to write a unit test for a watch expression on my controller. What seemed quite obviou

Wed, 26 Nov 2014 01:00:00 +0000

JavaScript Promises Essentials

JavaScript is asynchronous by definition which is what makes many server-side developers struggle ini

Tue, 18 Nov 2014 01:00:00 +0000

Learning Angular: What is the scope of your directive??

This might create quite some debugging headaches, especially in a larger application. Things don&rsqu

Thu, 13 Nov 2014 01:00:00 +0000

Learning Angular: Gosh, my two-way binding doesn't seem to work properly!

Angular data-binding seems magic, but obviously isn't. You have to give it a chance to do its work. A

Fri, 07 Nov 2014 01:00:00 +0000

Sublime Tip: Enable spell checking when you write Markdown

This is a huge lifesaver and I don't know how I couldn't come up with this before. Check out this pos

Fri, 07 Nov 2014 01:00:00 +0000

Introducing the learning-ng series

With this post I’d like to introduce to you the - what I’d like to call - learning-ng ser

Thu, 06 Nov 2014 01:00:00 +0000

Avoid test code duplication in Jasmine tests

Test code has to be treated like production code. Obviously we cannot charge the customer for it, it&

Thu, 30 Oct 2014 01:00:00 +0000

Want to invite your friend to Inbox by Gmail but have no invites left?

Slightly off-topic, but that might still awake your interest if you recently followed the hype around

Tue, 28 Oct 2014 01:00:00 +0000

Static code analysis for free

Although JavaScript might be the world’s most misunderstood language, it is now among the most popula

Tue, 21 Oct 2014 00:00:00 +0000

Hack: How to mimic a disabled checkbox

The world is not always as we want it to be :). So from now and then you have to place a nice hack he

Fri, 12 Sep 2014 00:00:00 +0000

Implementing the 'Git flow'

Git can be used in a variety of ways which is cool. But still, when working within a team, it is good

Mon, 01 Sep 2014 00:00:00 +0000

Node, Grunt, Bower and Yeoman - A Modern web dev's Toolkit

This article aims at introducing you to some of the currently most popular tools when developing mode

Fri, 15 Aug 2014 00:00:00 +0000

Lazy Angular Modules

Startup time is crucial for a proper user experience and that’s where many JavaScript SPA reall

Mon, 21 Jul 2014 00:00:00 +0000

First baby steps with Angular.js

This article outlines some of my notes of a webinar about Angular.js I recently participated at. Thes

Sun, 11 May 2014 00:00:00 +0000

See, always told you: testing is just a waste of time

Automated testing has become something people don’t speak about any more. It matured to being a

Wed, 07 May 2014 00:00:00 +0000

QCon London 2014 - Embracing Change - Building Adaptable Software with Events

Building adaptable software is what we continuously aim at achieving during our day to day work. Howe

Wed, 09 Apr 2014 00:00:00 +0000

Integrating Node.js with a C# dll

Recently I had to integrate a Node.js based server application with a C# DLL. Our software (a web-app

Mon, 31 Mar 2014 00:00:00 +0000

Packt Video: JBoss EAP Configuration, Deployment and Administration

Packt Publishing recently approached me about quickly reviewing a video series on JBoss EAP and its c

Sun, 16 Mar 2014 01:00:00 +0000

Automating the build of MSI setup packages on Jenkins

A short “how-to” based on an issue one of my work mates recently faced when trying to aut

Wed, 12 Mar 2014 01:00:00 +0000

Decision making, problem solving, introducing ideas, being influencial

Usually when people think about software development, they just have the typical nerds in mind, shy b

Wed, 05 Mar 2014 01:00:00 +0000

Automate your UI testing with Nightwatch

Although I feel like I'm repeating myself, automate **everything**. We're here to automate the proces

Fri, 21 Feb 2014 01:00:00 +0000

Git flow with Jenkins and GitLab

At work I recently helped a team to transition from TFS to using Git as their source control manageme

Tue, 07 Jan 2014 01:00:00 +0000

JSConf.eu - React: Rethinking best practices

Today I saw a tweet pointing to a JSConf talk by Pete Hunt from Facebook, talking about ReactJS, Face

Fri, 20 Dec 2013 01:00:00 +0000

Boot your ajax app: Creating a splash screen with NProgress

While single-page JavaScript apps tend to be more dynamic and usually more interactive from the user

Fri, 06 Dec 2013 01:00:00 +0000

The narrow path between best practices and over-engineering

A couple of days ago I read a post by Petri Kainulainen about The Dark Side of Best Practices. He rea

Tue, 19 Nov 2013 01:00:00 +0000

JBoss Weld CDI for Java Platform

CDI stands for Context and Dependency Injection and is the standardization of the process of dependen

Tue, 29 Oct 2013 01:00:00 +0000

Developing Windows Store Apps with HTML5 and JavaScript

After JavaScriptMVC, today the second book arrived where I participated in the technical review proce

Wed, 18 Sep 2013 00:00:00 +0000

'object' does not contain a definition for 'errors'

Today I ran into an interesting issues when writing a unit test for an ExceptionFilter which involved

Fri, 30 Aug 2013 00:00:00 +0000

JSConfUS 2013 - Angelina Fabbor in JavaScript Masterclass

Continuous improvement is an important concept. Everyone wants to get better, to learn new things. Th

Tue, 06 Aug 2013 00:00:00 +0000

How to add a reading time indicator to your blog in ten minutes

Time is money, right, and given that nowadays we are continuously being flooded with an enormous amou

Tue, 23 Jul 2013 00:00:00 +0000

TypeScript: Application scale JavaScript

This article is about Hejlsberg’s talk about TypeScript at the Build 2013 conference. TypeScrip

Mon, 22 Jul 2013 00:00:00 +0000

Setting up a WPF Application With PRISM

This post mainly functions as a documentation for myself on how to setup a WPF client to use PRISM wh

Wed, 26 Jun 2013 00:00:00 +0000

Code Coverage with QUnit in JavaScriptMVC

Beside giving you an immediate feedback, unit tests are extremely useful as a regression test suite.

Tue, 25 Jun 2013 00:00:00 +0000

Learning JavaScriptMVC

About half a year ago, Packt Publishing approached me for a technical review of a new book about Java

Tue, 18 Jun 2013 00:00:00 +0000

Unit Testing Tip: Create Descriptive Tests

Your unit tests should be as descriptive as possible. The feedback they give you should be so clear y

Mon, 17 Jun 2013 00:00:00 +0000

Vae Soli

Couple of weeks ago I got my medium.com account activated. It is basically a blogging platform with s

Fri, 14 Jun 2013 00:00:00 +0000

Caching, jQuery Ajax and Other IE Fun

In the last couple of days I had quite a fun time debugging problems of our JavaScript SPAs on oldIE

Thu, 06 Jun 2013 00:00:00 +0000

Getting Started with Git and Visual Studio

A couple of weeks ago I wrote an introductory article “Git Explained for Beginners” which

Mon, 03 Jun 2013 00:00:00 +0000

Blog Like a Hacker with Jekyll and Nitrous.IO

One of the best moves I probably did about half a year ago was to move my Blog from blogger to Jekyll

Wed, 08 May 2013 00:00:00 +0000

Perfect Workflow in Sublime Text 2

I previously wrote about my Sublime Text setup. Well, Tuts+ has published a quite nice Sublime Text t

Mon, 06 May 2013 00:00:00 +0000

Git Explained: For Beginners

I’m working with Git now for about two years but only for my personal projects and those I have

Tue, 30 Apr 2013 00:00:00 +0000

My Sublime Text Setup

I absolutely love this editor. A ridiculously fast editor which has everything you’d love to ha

Wed, 10 Apr 2013 00:00:00 +0000

Modularity in JavaScript MVC Frameworks

JavaScript MVC architectures are a de-facto standard when you create complex single-page JavaScript a

Mon, 08 Apr 2013 00:00:00 +0000

Entity Framework: Intercepting SQL Queries for Contextual Logging

Proper logging is of major importance and a must have in any serious application. Writing logs is tri

Fri, 22 Mar 2013 01:00:00 +0000

Mocking Internal Interfaces with Moq

When creating some Class Library you should pay attention to the visibility of its members and have a

Thu, 07 Mar 2013 01:00:00 +0000

Interview with DZone

DZone, where I'm part as an MVB, recently contacted me for an interview for their weekly newsletter e

Wed, 06 Mar 2013 01:00:00 +0000

The Coaching Architect

In this talk, Roy Osherove speaks about how to become a better coach. A nice talk highlighting some o

Tue, 12 Feb 2013 01:00:00 +0000

DZone MVB Goodies Box

Yesterday morning I received a nice little box with a DZone label on it. Seems like they sent it to m

Sun, 10 Feb 2013 01:00:00 +0000

Test Your App Under Slow Network Speeds

I guess that I don’t have to start talking about the importance of testing in the software deve

Fri, 01 Feb 2013 01:00:00 +0000

ASP.net MVC Action Methods: Testing Against Anonymous Return Types

I don’t use dynamic types regularly, but there are always again situations when they come in qu

Fri, 18 Jan 2013 01:00:00 +0000

How to Stay Up To Date On Web Technology

The web is evolving extremely fast, especially in the recent years I have the feeling that it really

Fri, 11 Jan 2013 01:00:00 +0000

Transformer TF101 meets Jelly Bean powered by CyanogenMod

During the Christmas holidays I found a bit of time to upgrade my old (but still nicely working) Nexu

Sun, 06 Jan 2013 01:00:00 +0000

Retrospective 2012

Yes we’re still alive ;) No jokes apart, it’s time for a year retrospective.Normally, a r

Mon, 31 Dec 2012 01:00:00 +0000

Gist: My New Devbook

I always had the idea of having some kind of organized store, some kind of very simple knowledge base

Tue, 18 Dec 2012 01:00:00 +0000

Cerego - Learn Anything, Everywhere

It’s now roughly 2 years I’m out of university. While also at may day-to-day job I cannot

Mon, 17 Dec 2012 01:00:00 +0000

Programming ASP.net MVC4 by J. Chadwick, T. Snyder and H. Panda

This is one of the recent books I got from O’Reilly. It is probably the most comprehensive and

Fri, 14 Dec 2012 01:00:00 +0000

HowTo: Subscribe to Failed TFS Builds

When you use a build server it is a must to get notified in case of build failures. Microsoft’s

Fri, 23 Nov 2012 01:00:00 +0000

Visual Studio: Where Did My Shelvesets Go?

Do you use the TFS shelvesets?? I do, not regularly, but from now and then they’re quite useful

Mon, 19 Nov 2012 01:00:00 +0000

Deploying: Git vs. TFS Showdown

I think everyone agrees deployment should be as simple as possible. Seems like everyone talks about c

Fri, 16 Nov 2012 01:00:00 +0000

Don't Create Your Own Mapper, Let AutoMapper Do The Job!

Mapping is a common task when integrating different systems with each other. Although it might often

Wed, 14 Nov 2012 01:00:00 +0000

Visual Studio Tips

At work, I spend a huge amount of my time working with Microsoft Technologies. As such, I also use Vi

Wed, 31 Oct 2012 01:00:00 +0000

Output Caching in ASP.net MVC

Although nowadays most of us have broadband connections, resource caching is important as loading a r

Mon, 29 Oct 2012 01:00:00 +0000

Lessons Learned: Don't Expose EF Entities to the Client Directly

When we refactored our main application architecture, moving from an ASP.net WebForms app to a rich c

Wed, 24 Oct 2012 00:00:00 +0000

HRT - Humility, Respect and Trust

About a year ago someone told me: the hardest problems you'll face won't be of technical nature but r

Mon, 15 Oct 2012 00:00:00 +0000

2nd Dan Yoseikan Budo

This is obviously a rather non-technical post :). After officially passing the exam of the 2nd Dan in

Fri, 05 Oct 2012 00:00:00 +0000

Visual Studio Test Explorer: Automatically Execute All Unit Tests Only

In Visual Studio 2012 the team invested a lot in order to improve the testing experience. Sooner or l

Wed, 03 Oct 2012 00:00:00 +0000

Finishing my Blog Relocation

About six years ago I decided to create a Blogger account and start blogging. That worked perfectly a

Thu, 27 Sep 2012 00:00:00 +0000

Find Code Duplicates with Sublime Text

Code duplication is the worst practice ever, right? Well, actually there might be situations where du

Tue, 04 Sep 2012 00:00:00 +0000

Know Your Tools: Become a JavaScript Power-Developer

One of the issues classical web developers have when diving into the rich JavaScript apps world is th

Fri, 31 Aug 2012 00:00:00 +0000

Fluent Conference: JavaScript & Beyond Complete Video Compilation by O'Reilly Media

Missed this years Fluent Conference in San Francisco? Then this amazing video compilation is probably

Wed, 29 Aug 2012 00:00:00 +0000

Jasmine - An Introduction

This page is the result of taking notes from the session about Jasmine by Davis W. Frank at this year

Wed, 29 Aug 2012 00:00:00 +0000

It's time to learn CoffeeScript

Seing and reading all the stuff about CoffeeScript, I thought it might be useful to get into that &ld

Sun, 26 Aug 2012 00:00:00 +0000

git tf - An Early View

I really like git. I actually don't know exactly why. I guess it's mainly also because GitHub is such

Thu, 23 Aug 2012 00:00:00 +0000

Mobile JavaScript Application Development by Adrian Kosmaczewski, O'Reilly Media

If you are a JavaScript newbie eager to dive into creating rich mobile web applications, this book is

Mon, 13 Aug 2012 00:00:00 +0000

Entity Framework Schema Translations

You should have different setup environments, right. Normally something like dev, test (or staging) a

Mon, 30 Jul 2012 00:00:00 +0000

Testing and the Single Responsibility Principle

Automated testing is hard! Therefore, if you're about to learn it, just keep going. Resist the initia

Thu, 26 Jul 2012 00:00:00 +0000

UX: Why GitHub for Windows is better than VS TFS Integration

Did you already try GitHub for Windows? It's created in a modern Win8 looking style. Initially it act

Tue, 24 Jul 2012 00:00:00 +0000

An Example of Test-Driven Bugfixing

Unfortunately many people still don’t use a test-driven approach during development. That&rsquo

Thu, 19 Jul 2012 00:00:00 +0000

Why $.extend(someObj, anotherObj) might be dangerous!

You often have the need to merge two objects. A common use case is that of combining parameters for a

Wed, 18 Jul 2012 00:00:00 +0000

IE8 Trouble Continued...Hangs on Dropdown Selection

The trouble seems to continue. In one of our apps, when clicking on a dropdown list, IE8 hang up comp

Mon, 16 Jul 2012 00:00:00 +0000

Strange Error When Downloading File in IE8 from SSL Site

A couple of days ago, one of our clients called indicating that he wasn’t able to download a fi

Mon, 16 Jul 2012 00:00:00 +0000

Setting up my Developer Machine

Developers need to have fast machines! Today I just returned from a week of holidays at Kos

Thu, 05 Jul 2012 00:00:00 +0000

Choose Your Commit Messages Properly

I wrote already a couple of posts about version control stuff and best practices related with it. So

Tue, 05 Jun 2012 00:00:00 +0000

Detecting Location Redirects from JavaScript

A common scenario for using the HTTP Location response header is during an authentication process whe

Thu, 24 May 2012 00:00:00 +0000

Architecting for Failure at the Guardian

Architecting for the Failure, a presentation of this year's QCon London 2012. Michael Brunton-Spall g

Sun, 20 May 2012 00:00:00 +0000

Visual Studio: Set the Build Action for an Entire Folder

I'm sure you already encountered this problem, right? In my specific case I have a folder called "fro

Mon, 14 May 2012 00:00:00 +0000

Scaling Android Emulator Size: Without using Eclipse

As you might have read following my previous post I'm currently experimenting with mobile web so

Thu, 03 May 2012 00:00:00 +0000

HTML5 vs Android: Apps or Web for mobile development??

This is a hotly discussed topic recently. The web is now a fully-capable platform and it's getting be

Thu, 26 Apr 2012 00:00:00 +0000

Using NuGet to Distribute Our Company Internal DLLs

Releasing new software has to be simple and super fast! That was not the case for our company-interna

Thu, 19 Apr 2012 00:00:00 +0000

Respecting "the Zone"

Respect when someone is "in the zone"! Don't disturb him if it's not necessary. The "context switch p

Thu, 05 Apr 2012 00:00:00 +0000

Joining the DZone MVB Program

A couple of weeks ago I was kindly invited to join DZone as a MVB (Most Valuable Blogger). If you sho

Tue, 03 Apr 2012 00:00:00 +0000

QCon London - My Personal Recap

From the previous posts (or from those on my Tumblr stream) you might have understood my participatio

Tue, 03 Apr 2012 00:00:00 +0000

Sharpening the Tools

This is a talk from Dan North about Sharpening the Tools at QCon 2010. I had the great pleasure to li

Wed, 14 Mar 2012 01:00:00 +0000

Questions for an Enterprise Architect

Erik Dörnenburg answers: What is Enterprise and Evolutionary Architecture?, discussing 4 issues: Turn

Fri, 02 Mar 2012 01:00:00 +0000

I Want the Cursor to be placed in the 1st empty Textbox!

You develop a webapp, you have a couple of input fields and buttons on your page. Then the requiremen

Fri, 17 Feb 2012 01:00:00 +0000

Sequential Asynchronous Processing with jQuery Deferreds

Asynchronous processing is one of the most difficult things for devs to understand when switching fro

Mon, 13 Feb 2012 01:00:00 +0000

ASP.net MVC3: Doesn't Deserialize Nullable Properties from Json

A couple of days ago I noticed that the Nullable properties of a C# object were not properly deserial

Tue, 07 Feb 2012 01:00:00 +0000

Don't rant! Become Social and Contribute back!

Todays web experience has changed a lot and so has done coding as well. Everything is around being so

Wed, 01 Feb 2012 01:00:00 +0000

Eclipse: Importing existing project: "Invalid project description"

Monday morning, 07:30 AM. Me, starting the computer after the weekend, executing a git pull from my r

Mon, 23 Jan 2012 01:00:00 +0000

Don't Fall into the IEnumerable<T> Trap

Recently I upgraded some code of our company-internal class library and observed a plausible but stil

Tue, 17 Jan 2012 01:00:00 +0000

Help, Ubuntu 11.10 won't boot!!

Today I tried to start the new Ubuntu 11.10 from the live CD on the old desktop computer of my girlfr

Sun, 15 Jan 2012 01:00:00 +0000

2011 Retrospective and a New Look

I know it's a bit late for a 2011 year recap, but I didn't manage to write one earlier. Actually, I j

Thu, 05 Jan 2012 01:00:00 +0000

Writing IoC Supported Integration Tests using AutoFac

Using a dependency injection framework can greatly facilitate your code's testability in that yo

Mon, 12 Dec 2011 01:00:00 +0000

Exploring JavaScript: Scope Pollution when instantiating JavaScript Objects

John Resig has written a very interesting article (I'm not able to find just now) on how the current

Wed, 07 Dec 2011 01:00:00 +0000

Saying Goodbye to University

After my thesis presentation in march this year, my university career now ended officially with the d

Tue, 06 Dec 2011 01:00:00 +0000

Large-scale JavaScript Application Architecture

JavaScript programming has evolved a lot over the past years and has somehow revolutionized the way y

Mon, 21 Nov 2011 01:00:00 +0000

Some Usability Thoughts for the Weekend...

A couple of days ago I got the order to write a very simple program that would take a bunch of XML in

Fri, 18 Nov 2011 01:00:00 +0000

Use The "var" Keyword to Have More Maintainable Tests!?

I have to admit that initially when the "var" keyword has been introduced in C# I was quite precautio

Fri, 18 Nov 2011 01:00:00 +0000

AutoFac: ASP.net WebForms UserControl Dependencies Only Available At Page_Load Event

I'm currently adapting the architecture of one of our old but core projects, still written in ASP.net

Tue, 15 Nov 2011 01:00:00 +0000

jQuery Validation: Add a Required Field Marker

When you use jQuery for validating input fields you might want to automatically (based on the validat

Fri, 04 Nov 2011 01:00:00 +0000

Don't Underestimate the Trouble Caused by URLs in Emails

At a first glance, the title might seem strange, but wait. The company I'm working at creates e-gover

Thu, 03 Nov 2011 01:00:00 +0000

Exploring JavaScript: Iterating Over a Collection of Items

If I manage to do it, I'd like to write a series of introductory posts about programming in JavaScrip

Thu, 27 Oct 2011 00:00:00 +0000

What? Model-View-Controller in JavaScript?

At work I'm currently working on a new web architecture composed of a rich client written in JavaScri

Mon, 10 Oct 2011 00:00:00 +0000

TechVid: Become a Javascript Console Power-User

A nice 7 minute video showing some Chrome, Opera and Firefox power user commands for the JavaScript c

Sat, 08 Oct 2011 00:00:00 +0000

The Similarity of C# and JavaScript Syntax

I'm currently diving deeply into creating rich JavaScript web applications. You cannot deny that they

Mon, 03 Oct 2011 00:00:00 +0000

Testing JavaScript: Mocking jQuery Ajax Calls

When "seriously" developing JavaScript applications we obviously need to write tests. Being a fully d

Mon, 26 Sep 2011 00:00:00 +0000

JavaScript Scoping by Example

Understanding the scoping rules of JavaScript is one of the fundamental things to learn when getting

Thu, 01 Sep 2011 00:00:00 +0000

Integrating Jersey with Spring

Spring provides a lot of benefits and promotes best practices with its dependency injection mechanism

Sun, 28 Aug 2011 00:00:00 +0000

Why Did it Have to Be So Complicated Before??

I started web development using Java, basically during my studies at the university. When workin

Fri, 26 Aug 2011 00:00:00 +0000

Chrome Developer Tools: 12 Tricks to Develop Quicker

This is definitely a "must-have-seen" video for every JavaScript developer. Chrome has some really ni

Thu, 25 Aug 2011 00:00:00 +0000

Experiencing the jQuery 1.6 Breaking Changes

Unfortunately I did not actively follow the release of jQuery 1.6 as I would probably have noted that

Mon, 15 Aug 2011 00:00:00 +0000

JavaScriptSerializer: Circular Reference was Detected While Serializing an Object of Type...

Consider an ASP.net MVC web application where you use some Ajax for retrieving an object. Let's start

Fri, 12 Aug 2011 00:00:00 +0000

How often did you use the Yield keyword??

If you think about your coding...how often have you used C#'s yield keyword? To be honest I continuou

Mon, 08 Aug 2011 00:00:00 +0000

Check-in Small Pieces to your VCS!

A while ago our TFS master at work :) sent around a statistic about the "ExcutionCount" of each devel

Sat, 06 Aug 2011 00:00:00 +0000

Posting JSON Data to an ASP.net MVC 3 Web Application

The trend in today's web application development goes more and more in the direction of having rich,

Thu, 04 Aug 2011 00:00:00 +0000

Write the Minimum Necessary Code In Your Unit Test Case That Makes It Valuable

Maintainability is of major importance in software development. Usually writing tests against your co

Sun, 17 Jul 2011 00:00:00 +0000

Android Development Tools

Till recently, (IMHO) Android Developers had a very bad experience in designing graphical U

Thu, 23 Jun 2011 00:00:00 +0000

Create DOM Tree out of a Dynamic HTML String

Just a very short post before I go to bed as I'm really tired today. I just played around with some J

Tue, 21 Jun 2011 00:00:00 +0000

SmellyCode: A Classical Example of Non-Unittestable Code

I know there might be some degree of repetition in my posts when I speak about unit testing and mocki

Mon, 20 Jun 2011 00:00:00 +0000

Should Android Worry About the iOS 5 Update? Definitely Not!

With the announcement of the new iOS 5 at the WWDC, the first articles emerge already on the web rela

Tue, 07 Jun 2011 00:00:00 +0000

HowTo: Upgrade RAM of Your Macbook Pro

Here's a nice video that clearly explains how you can upgrade your Macbook RAM:

Thu, 26 May 2011 00:00:00 +0000

Visual Studio: The application cannot start

Today I started my Visual Studio 2010 instance by using the "Run as administrator" option (as I often

Wed, 25 May 2011 00:00:00 +0000

Basta-On-Tour Wrap Up Day 2: EF Best Practices, JavaScript, MVC

Day 2 at the BASTA! On Tour was dedicated to different kind of small workshops.Web 2.0 Applications w

Tue, 24 May 2011 00:00:00 +0000

Basta-On-Tour Wrap Up Day 1: Entity Framework

Well, this is a very short and brief wrap up of the 1st day here at the Basta! On Tour in Düsseldorf.

Fri, 20 May 2011 00:00:00 +0000

Document and Share Your Snippets: Presenting SnippetDoc

Increasing the productivity in the long run is most often tightly related to increasing the quality.

Fri, 06 May 2011 00:00:00 +0000

Is It More Readable??

I was just going over some code and came across some webservice methods having a lot of repetitive co

Tue, 03 May 2011 00:00:00 +0000

Trouble with the VS QualityTools.UnitTestFramework dll

I recently build a tool that automates and simplifies the unit testing of large parts of our applicat

Sat, 09 Apr 2011 00:00:00 +0000

Why Automated Tests Boost Your Development Speed

Many critics against writing automated tests directly address the additional time that is needed for

Wed, 06 Apr 2011 00:00:00 +0000

Load JavaScript Files Asynchronously

I recently worked on a component for our single-sign-on system. As part of that work I also developed

Sun, 03 Apr 2011 00:00:00 +0000

Concluding another Chapter

Yesterday I finally concluded my studies for the Master in Computer Science at the Free University of

Sat, 26 Mar 2011 01:00:00 +0000

A Test-Driven Dev's Nightmare: Meeting the HttpContext

My main task for the coming weeks at work is to extend one of our older but highly successful we

Wed, 16 Mar 2011 01:00:00 +0000

JCG - Joining the Java Code Geeks Program

A couple of days ago I was kindly invited to the Java Code Geeks program. Their goal is to build an o

Thu, 10 Mar 2011 01:00:00 +0000

Help, Gingerbread drains the Battery of my Nexus One!!

A couple of days ago I finally got the eagerly awaited system upgrade to Gingerbread on my Nexus One.

Mon, 07 Mar 2011 01:00:00 +0000

Getting Started with Android Development

Android has become very popular recently, especially among developers which would like to create some

Wed, 23 Feb 2011 01:00:00 +0000

Least Invasive Approach to Gain Root Access on the Nexus One

For my current Android research project I needed to copy an APK to the /system/app folder. Now for th

Mon, 14 Feb 2011 01:00:00 +0000

Deploy Android APK OTA Using Symbolic Links and Dropbox

Couple of time ago I wrote a blog post describinghow you can use Dropbox for deploying your Android A

Thu, 10 Feb 2011 01:00:00 +0000

Coding an Update Functionality for your Android App

(adsbygoogle = window.adsbygoogle || []).push({}); An immediate answer would be: why should I need t

Mon, 07 Feb 2011 01:00:00 +0000

FriendlyBool Extender What?

From now and then it happens that I have to databind some entities onto the UI, containing boolean da

Thu, 03 Feb 2011 01:00:00 +0000

Why Extract {Class | Interface | Method} Refactoring improves Testability and Readability

I still see many developers coding huge methods and large classes. The code looks very much procedura

Sat, 29 Jan 2011 01:00:00 +0000

Android: HowTo Detect Installed SQLite DB Version

As you might already know, Android comes with a preinstalled SQLite database. This is quite handy bec

Fri, 21 Jan 2011 01:00:00 +0000

ASP.net: Organize Your Resources the Correct Way!

ASP.net provides well-known mechanisms for localizing web applications, namely by extracting hard-cod

Tue, 18 Jan 2011 01:00:00 +0000

Tomcat: IllegalStateException: No output folder

Today, I started to create a couple of JSP pages for the server-side part of my MSc thesis project in

Sun, 26 Dec 2010 01:00:00 +0000

Win7: Windows Explorer Doesn't Refresh Elements

This was a really weird problem. Overnight Windows Explorer on my Windows 7 Enterprise installation s

Fri, 17 Dec 2010 01:00:00 +0000

Smelly Code: Direct Object Instantiation as a Testability Killer

This Smelly Code post discusses mainly a testability issue without going into further detail on other

Thu, 09 Dec 2010 01:00:00 +0000

Update SDK to Platform Gingerbread 2.3: Conversion to Dalvik Format Failed

Today I took the chance (and a bit of free time) to upgrade to the latest Android SDK release, namely

Wed, 08 Dec 2010 01:00:00 +0000

HowTo: Using VS2010 Web.config Transformations to Bypass SSL Authentication Locally

Most often when you create WCF webservices you'll want to run them in a secure channel, for instance

Mon, 06 Dec 2010 01:00:00 +0000

Juri Goes GIT - First Steps

Yes, I'm going "git" ;). An inherent part of structured, well organized working is to have your stuff

Tue, 30 Nov 2010 01:00:00 +0000

Don't Let Your Test Doubles Fool You

During unit testing it is common to substitute dependencies with a test double (see Martin Fowler's d

Thu, 25 Nov 2010 01:00:00 +0000

Testing Your SUT Against Exceptions

When you test your method for exceptions (which is good practice) the usually naive approach - which

Tue, 23 Nov 2010 01:00:00 +0000

Android: Attaching ClickListeners Declaratively

If you define a click listener for - say - a button in an android Activity, then you basically have t

Fri, 19 Nov 2010 01:00:00 +0000

More Than Just Synching - Dropbox

You know Dropbox, right (if not, head on to get it here)? I totally love that tool. I mean, you nearl

Tue, 16 Nov 2010 01:00:00 +0000

HowTo: MySQL Workbench to Remote Ubuntu Production Server Using SSH Port Forwarding

Before starting, I'm totally not the Linux command line guru, unfortunately. It feels like years of j

Mon, 15 Nov 2010 01:00:00 +0000

Intercepting WCF Operation Calls with Impersonated Identity

Take the following scenario. You have a WCF webservice with several operations. The communication run

Fri, 05 Nov 2010 01:00:00 +0000

Test-Driven Development and Automated Testing: A Metaphor

Motivation is an important factor when learning something new. It is what makes you ambitious and wha

Fri, 15 Oct 2010 00:00:00 +0000

Smelly Code: Eager Test

This post shows a common code smell in unit tests also mentioned in the xunit test patterns book, nam

Wed, 29 Sep 2010 00:00:00 +0000

Introducing #smellycode

Couple of month ago, after posting some comments about bad code on Twitter, my ex-work-mate Peter (gr

Mon, 27 Sep 2010 00:00:00 +0000

Lessons Learned: Make your ListItemCollection Linq Queryable

I love Linq! In my opinion it is one of the best features that have ever been added to C#, making dev

Mon, 20 Sep 2010 00:00:00 +0000

Retrieve Selected Items on Checkable ListView: Differences in SDK Level 7 and 8

I'm currently testing my Android app that I'm developing for my MSc thesis on different real devices.

Tue, 14 Sep 2010 00:00:00 +0000

Design Tech Talk Series Presents: OO Design for Testability

One of the main challenges in adopting TDD methodologies and automated testing with xUnit frameworks

Wed, 18 Aug 2010 00:00:00 +0000

TDD Test == Unit Test or TDD Test Unit Test?? Is it Really Important??

Recently I had an interesting buzz conversation with a former work-mate, Peter. Just like myself

Mon, 16 Aug 2010 00:00:00 +0000

HowTo: Teach Visual Studio to Remember Your TFS Password

I often now ran into the problem of continuously getting queried for the TFS credentials when connect

Wed, 11 Aug 2010 00:00:00 +0000

Do I Really Need to Test This??

Yes! Let's start straight of with an example. Consider I have my service (business) class SourceCodeI

Tue, 03 Aug 2010 00:00:00 +0000

Testing Newbies: Some Thoughts about Test First

A quick post just before diving into the weekend filled with Yoseikan training, swimming, going out w

Fri, 30 Jul 2010 00:00:00 +0000

Passing Property Names the "compiler-safe" Way

A common bad practice which I often find when browsing through code is to see people directly hard-co

Thu, 29 Jul 2010 00:00:00 +0000

HowTo: Install your Android app OTA on your device for testing

A fundamental thing when developing Android apps but also in general when developing with device emul

Thu, 15 Jul 2010 00:00:00 +0000

Practical example: Applying the Template Method design pattern

As I already mentioned in my previous post I'm currently doing domain objects to XSD generated object

Tue, 13 Jul 2010 00:00:00 +0000

Refactoring for the sake of compactness and reusability

Currently I'm doing a rather monotonic work, let's call it like this. We basically need to serialize

Fri, 09 Jul 2010 00:00:00 +0000

Let tests guide you through development

I'm currently working on my MSc thesis work which is divided into a project that has to be developed

Sat, 26 Jun 2010 00:00:00 +0000

Android Instrumentation test - AndroidTestCase: java.lang.IllegalAccessError

Today I started writing the instrumentation tests for the Android platform side of the project. For y

Sun, 06 Jun 2010 00:00:00 +0000

HowTo: Get an Android app's database from the emulator

Most apps need a database for storing their data onto the device in a structured form. Android's nati

Thu, 03 Jun 2010 00:00:00 +0000

Why factories with configuration files are better for decoupling but still a testability killer

As I already highlighted in several previous posts one of the most critical things when facing unit t

Mon, 31 May 2010 00:00:00 +0000

Boost your productivity using shortcuts in Visual Studio

A major aim of everyone is (or should be) to increase his personal productivity. Now productivity is

Wed, 26 May 2010 00:00:00 +0000

Can you trust your tests?

One important thing about unit testing but also about testing in general is that you can trust y

Fri, 14 May 2010 00:00:00 +0000

'\n' will break your JSON jQuery - WCF service call

I recently coded a WCF REST webservice that needed to be accessed from JavaScript. Basically it was a

Fri, 07 May 2010 00:00:00 +0000

Test-Driven-Design: A real world scenario of an email sending requirement

Many applications have requirements to send automatic emails to their users, especially in web enviro

Thu, 15 Apr 2010 00:00:00 +0000

HowTo: Prevent Visual Studio from auto-formatting your jQuery source

When writing JavaScript code with Visual Studio 2008 it automatically formats your source code when g

Wed, 07 Apr 2010 00:00:00 +0000

Unit testing asynchronous code

Today I wrote on a first prototype for my current thesis research. I started coding just ahead howeve

Sun, 04 Apr 2010 00:00:00 +0000

Tackle software dependencies with IoC and Dependency Injection

Coupling between objects creates "dependency", which per se is not bad at all. You will always have s

Sun, 21 Mar 2010 01:00:00 +0000

GWT Button with image AND text

GWT just provides the basic widgets like check boxes, hyperlinks, buttons etc...and leave the more co

Mon, 15 Mar 2010 01:00:00 +0000

Client-server communication peculiarities with GWT and App Engine DataNucleus

I just had to fight with a strange exception which got raised after a GWT-RPC call to the App Engine

Fri, 12 Mar 2010 01:00:00 +0000

GWT, App Engine and App Engine Data Classes

I currently have some time before starting with my Master thesis project which will bring me back to

Tue, 23 Feb 2010 01:00:00 +0000

DockLayoutPanel doesn't work correctly??

Suppose you'd like to create a layout like the following using GWT:With GWT 2.0 the documentation sug

Fri, 19 Feb 2010 01:00:00 +0000

HowTo: Launch JavaScript after async postback of UpdatePanel

Assume the scenario where you want to launch a JavaScript function after your UpdatePanel finished to

Thu, 18 Feb 2010 01:00:00 +0000

GWT DecoratorPanel style problems

I just experienced a nice side effect that happens if you use a DecoratorPanel. In my example it cont

Tue, 16 Feb 2010 01:00:00 +0000

Reloaded: Clean up your folder. For MacOS

When downloading files from the web I usually have a predefined folder where all the downloads from m

Sun, 07 Feb 2010 01:00:00 +0000

Are anonymous Lambda style event handlers a readability killer?

A standard event handling method in C# looks something like thispublic void SomeOtherMethod(){MyClass

Wed, 03 Feb 2010 01:00:00 +0000

Time Machine backups to Windows shared network drive

As some of you may have already read I acquired a MacBook Pro about half a year ago and I love it ;)

Sun, 31 Jan 2010 01:00:00 +0000

HowTo: Use your iPhone as a remote control for presentations

My latest post is already a while back but I'm currently extremely busy. More posts will come in Febr

Thu, 28 Jan 2010 01:00:00 +0000

HowTo: Use globally defined resources in your ASPX code

When creating localized web applications using ASP.net you may often come across strings which are th

Fri, 08 Jan 2010 01:00:00 +0000

Comments smell! Replace them with more expressive code.

As already pointed out in that post, here's another code example:...//300 = Italyif(aCompany.NationId

Wed, 06 Jan 2010 01:00:00 +0000

HowTo: Fade out div after some seconds using jQuery

Today I made a quick change to my blog. I don't know whether many of my readers noticed the possibili

Wed, 30 Dec 2009 01:00:00 +0000

Android SMS activity doesn't fill phone number

Today while fixing a bug for our current project we develop for the Android phone I found a strange b

Sat, 26 Dec 2009 01:00:00 +0000

Creating Test Suites with jUnit 4

A while back I've posted about how to enable the automatic (jUnit 3.8-style) creation of test suites

Fri, 25 Dec 2009 01:00:00 +0000

The power and simplicity of the Command pattern

Never thought of how to implement an "undo" function? Not that easy, huh? People in our architecture

Thu, 10 Dec 2009 01:00:00 +0000

MapView doesn't fire onLongClick event

Here's another curiosity I came across today while programming on my Android project. I was creating

Wed, 02 Dec 2009 01:00:00 +0000

HowTo: Include JavaScript file from JavaScript code

Recently a colleague asked me on how to add a JavaScript file reference to an HTML document from with

Thu, 26 Nov 2009 01:00:00 +0000

Implementing the onTouchEvent for the MapActivity

Android View classes expose an onTouchEvent(MotionEvent ev) method. As the name already suggests, by

Tue, 24 Nov 2009 01:00:00 +0000

Visual Studio intellisense not working properly

Recently a work mate pointed me out that my Visual Studio Intellisense seemed to not work correctly.

Fri, 20 Nov 2009 01:00:00 +0000

HowTo: Get the selected list index on Android Activity from context menu event

Consider the situation where you have an Activity displaying a list of items. You have a context menu

Wed, 11 Nov 2009 01:00:00 +0000

HowTo: Run IIS 7 on Vista 64bit OS in 32bit mode

A couple of days ago, I ran into a nice problem. I had to configure the setup of a new project using

Tue, 10 Nov 2009 01:00:00 +0000

ASP.net Ajax: Consuming webservice from client-side JavaScript

Yesterday I answered a question on SO related to the problem of consuming an ASP.net webservice from

Sat, 07 Nov 2009 01:00:00 +0000

Instantiating object from generic type: Java vs. .Net

Consider the following .Net code:public static class Processor{public static TItem CreateInstance<

Fri, 30 Oct 2009 01:00:00 +0000

Accessing the host machine from your Android emulator

I recently started a project where I develop an Android app (there will some posts later on ;) ) whic

Thu, 29 Oct 2009 01:00:00 +0000

Repeater looses its data collection. ViewState problem?

A while back I experienced a really strange problem in one of our ASP.net applications, namely my rep

Tue, 27 Oct 2009 01:00:00 +0000

Part 1: Writing testable code for the Android

Creating testable code is one of the major aims when designing good, maintainable applications. I act

Tue, 20 Oct 2009 00:00:00 +0000

Blog to learn...

John Skeet answered a question on SO related to how to learn good programming in terms of learning go

Sun, 11 Oct 2009 00:00:00 +0000

Annotation tools for the Mac

When you create scientific reports or you just prepare for exams you usually have to go over a whole

Tue, 06 Oct 2009 00:00:00 +0000

GWT meets Spring

GWT is quite evolving recently. There are a couple of reasons for that:Coding apps like Gmail and Goo

Tue, 29 Sep 2009 00:00:00 +0000

Are C# regions a good thing??

Well, I'd say it depends. If you use regions to logically group your code in your class, then it may

Fri, 25 Sep 2009 00:00:00 +0000

Law of Demeter: Nice metaphor

I just came across a nice metaphor for explaining the Law of Demeter. For those of you that didn't ye

Tue, 22 Sep 2009 00:00:00 +0000

Microsoft Ajax CDN

Scott Gu' just announced the launch of Microsoft Ajax Content Delivery Network. The name already expl

Wed, 16 Sep 2009 00:00:00 +0000

Add semantic through your code, not through commenting

Is it good to have a lot of code comments, explaining things s.t. your other team members know what w

Sun, 13 Sep 2009 00:00:00 +0000

Watch out when cloning objects

Cloning is never a good thing. I would say in most cases there is a better alternative for reaching y

Tue, 08 Sep 2009 00:00:00 +0000

It is not about writing tests, its about writing stories

Writing unit test and moreover having them in place when developing is a great thing. They give you s

Fri, 04 Sep 2009 00:00:00 +0000

Don't use negated method names!

What does this mean. Don't write something likepublic bool IsNotCorrect(...){...}but rather writepubl

Fri, 28 Aug 2009 00:00:00 +0000

NullsafeGet extension method? Simplicity for the cost of readability??

When programming, there is often the the situation where you have to continuously do the null-check i

Fri, 14 Aug 2009 00:00:00 +0000

HowTo: Control the rendered Html tag on your custom, composite server controls

Normally when you want to achieve that your custom server control is rendered inside a specific HTML

Tue, 11 Aug 2009 00:00:00 +0000

HowTo: Changing TFS workitem type from task to bug

Recently I found a bug while implementing another feature and in order to not forget it, I created a

Fri, 07 Aug 2009 00:00:00 +0000

Around(J2)ME listed on Softpedia

A project I developed together with my colleague Matthias Braunhofer during the course of Mobile Serv

Mon, 03 Aug 2009 00:00:00 +0000

Using code metrics as indicator for code refactoring

Developing software is not just hacking in a solution, but to develop simple, well structured and the

Sun, 02 Aug 2009 00:00:00 +0000

Server Error: Validation of viewstate MAC failed.

If you get the following error...Validation of viewstate MAC failed. If this application is hosted by

Fri, 31 Jul 2009 00:00:00 +0000

VS Designer: 'X' could not be set on property 'Y'

I'm currently developing some custom ASP.net server controls. Internally I often have lists, where th

Mon, 27 Jul 2009 00:00:00 +0000

Automatically find the Label associated to a WebControl through the AssociatedControlID

ASP.net Label controls own the property "AssociatedControlID" which points to the control to which th

Fri, 24 Jul 2009 00:00:00 +0000

HTML list item background image disappears on IE

I recently faced the problem that the background images that have been added to an HTML li tag over C

Mon, 20 Jul 2009 00:00:00 +0000

ExecutableTask pattern to tackle J2ME multithreading

Programming on the mobile device is quite different to more common environments like web or client-se

Tue, 07 Jul 2009 00:00:00 +0000

MIDlet for downloading image from the web

J2ME provides several ways for creating an Image object: Image.createImage(String) Image.createImage(

Mon, 29 Jun 2009 00:00:00 +0000

Do you know the "Joel Test"?

First of all, who is "Joel"? Joel Spolsky is a software developer in the US. I came across his intere

Fri, 19 Jun 2009 00:00:00 +0000

About Scrum - in under 10 minutes

Here’s a nice video that explains Scrum in under 10 minutes. It was quite useful when preparing

Thu, 18 Jun 2009 00:00:00 +0000

Mashup editor about to shut down

According to a note on the official Google Mashup Blog, they're about to shut down the Google Mashup

Mon, 15 Jun 2009 00:00:00 +0000

HowTo: Getting started with JUnit testing for Liferay portlets with Netbeans (for Eclipse users)

Besides at work, where I'm developing in .Net using Visual Studio, I'm a heavy Eclipse user. I use it

Wed, 10 Jun 2009 00:00:00 +0000

Page Speed: Firebug add-on for analyzing web page speed

Google just released Page Speed, a Firefox add-on for analyzing web pages in terms of speed. The tool

Mon, 08 Jun 2009 00:00:00 +0000

HowTo: Keep request parameters on validation errors with Spring's SimpleFormController

I recently had a problem when using Spring's SimpleFormController together with validation. So I post

Sun, 31 May 2009 00:00:00 +0000

HowTo: Get localized string different from the current culture

Localization is a key part of most applications. For this purpose you usually use resource files (pro

Fri, 29 May 2009 00:00:00 +0000

What happens if you think in Java and program C#

I'm quite jumping between the two languages. In the morning at the university I'm usually programming

Thu, 28 May 2009 00:00:00 +0000

Use Google Scholar and Latex for correctly citing papers

Citing papers is somewhat critical. There are predefined styles that have/should be respected. But it

Tue, 26 May 2009 00:00:00 +0000

JsTestDriver - Easy unit testing for JavaScript code

Today this video got my attention which is basically a short demo of JsTestDriver, a nice implementat

Mon, 25 May 2009 00:00:00 +0000

Help, my MSTest DeploymentItem doesn't get deployed!

MSTests allow you to define items you'd like to deploy to the deployment directory when executing the

Sat, 23 May 2009 00:00:00 +0000

String enumerations in C#

Enumerations are a very handy programming construct. Especially when you're developing in a larger te

Thu, 21 May 2009 00:00:00 +0000

Intel ProSet Wireless tool causing a lot of trouble

Years ago I installed the Intel ProSet Wireless tool for managing my wireless network connections on

Tue, 19 May 2009 00:00:00 +0000

Debugging and Testing the Web with Firebug

CommentRob Cambell, member of the Firebug working group gives a talk about Firebug, its history and a

Thu, 14 May 2009 00:00:00 +0000

HowTo: Make your custom ASP.net server control validatable

Content validation is a major issue of every application. It is an absolute "must have" to notify the

Mon, 11 May 2009 00:00:00 +0000

jQuery plugin development pattern

I'm currently diving more and more into the jQuery library. First I'm using it on a portlet I'm devel

Wed, 22 Apr 2009 00:00:00 +0000

Use Firebug everywhere!

You're a web developer and you cannot live without Firebug? Understandable. Firebug provides such gre

Fri, 17 Apr 2009 00:00:00 +0000

Best practices: The challenge of designing software for wireless devices

Designing good software for wireless devices such as mobile phones is not straightforward. Developers

Tue, 14 Apr 2009 00:00:00 +0000

HowTo: Bind an input field to a Date property using Spring's SimpleFormController

If you're using the Spring SimpleFormController for binding your Java bean object to the UI, you may

Fri, 10 Apr 2009 00:00:00 +0000

Internet Explorer 8: Compatibility

Here's an article written by Pietro Brambati on his blog about IE8 compatibility. It's quite interest

Thu, 02 Apr 2009 00:00:00 +0000

These damn spammers!!!

Once again one of my blog posts got infected by "spam" comments. But this time not the usual pharmace

Mon, 30 Mar 2009 00:00:00 +0000

Extended view reloaded

With the transition to the complete new blog design I initially had to leave away some features which

Wed, 25 Mar 2009 01:00:00 +0000

Best practices: Deploying webapps (contd.)

Some time ago I've written a post about best practices in deploying web applications by mentioning th

Fri, 20 Mar 2009 01:00:00 +0000

UML Use Case "extend" and "include" relationships

From now and then I have to create UML diagrams to model certain parts of software projects, especial

Tue, 17 Mar 2009 01:00:00 +0000

Floating figures and tables with Latex

Latex provides you with a lot of advantages when writing scientific papers. It allows you to fully fo

Sun, 15 Mar 2009 01:00:00 +0000

Problems with character encoding on cookies

For preserving the search criteria on some page of our web application we're saving the differen

Wed, 11 Mar 2009 01:00:00 +0000

Guidelines for promoting your blog

Some guidelines on how to promote and so to increase the traffic on your blog. These "rules" have bee

Thu, 05 Mar 2009 01:00:00 +0000

HowTo: Set the assembly binding location

This post is somehow related to the one I made just a couple of days ago. The application plugins (dl

Sat, 28 Feb 2009 01:00:00 +0000

Getting ready for mobile development with Eclipse, WTK and EclipseME

I just noticed that I did not post one topic about mobile development with J2ME, and that although my

Fri, 27 Feb 2009 01:00:00 +0000

HowTo: Detect Assembly dependencies at runtime

I'm currently developing a small project for myself, where I'm trying to build a small plugin framewo

Wed, 25 Feb 2009 01:00:00 +0000

Observation: Selected value behaviour of the DropDown list control

Today at work I observed a quite "nice" behaviour of the ASP.net DropDown list control. We usually ha

Mon, 23 Feb 2009 01:00:00 +0000

Google AJAX APIs: The Google Visualization API

From now and then I'm always taking a quick look at Google's API page to see whether something new an

Sun, 22 Feb 2009 01:00:00 +0000

Installing and configuring ATI graphics card drivers on Ubuntu Hardy

For the "Data Mining and Data Warehousing" course at the university, we had to implement a spectral c

Sun, 15 Feb 2009 01:00:00 +0000

HowTo: Persist viewstate on the server-side

In our last web project we had some performance issues, mainly caused by the extremely big page views

Thu, 12 Feb 2009 01:00:00 +0000

Accidentally deleted the Ubuntu main menu bar!!

I just clicked accidentally on the main top panel on the Ubuntu desktop and damn...I deleted the menu

Tue, 03 Feb 2009 01:00:00 +0000

HowTo: testing jFace Action class taking a StructuredSelection object

Let's consider the following jFace Action class:public class RateAction extends Action {private final

Thu, 15 Jan 2009 01:00:00 +0000

Accessing webcontrols inside the ProgressTemplate of an UpdateProgress

Apparently it is not possible to access server-side web controls that are within the "ProgressTemplat

Fri, 09 Jan 2009 01:00:00 +0000

Best practices: Tracking information on the source code with Visual Studio and TFS

An issue in managing a code base is not only to guide different developers through the development pr

Thu, 08 Jan 2009 01:00:00 +0000

By far the best "404 Not Found" notification I've ever seen!!

I just wanted to download a zip-file from a url provided by one of my university professors, but sadl

Sat, 03 Jan 2009 01:00:00 +0000

Blogging year 2008

First of all, happy new year 2009, I wish you all the best! :) This is a scheduled post of course :D

Thu, 01 Jan 2009 01:00:00 +0000

First steps with Silverlight. What about GWT?

Last week I had some time which allowed me to do some experiments with Microsoft Silverlight. I had t

Tue, 23 Dec 2008 01:00:00 +0000

Using extenders to abstract details and improve code readability

Extenders are a really cool feature of C#, which can be quite handy sometimes. I found the following

Tue, 02 Dec 2008 01:00:00 +0000

C++ linking libraries to build configuration in Eclipse

When programming in C++ you may often have to link at compile time to 3rd-party libraries which you'r

Thu, 27 Nov 2008 01:00:00 +0000

C++ experiences

Most of the courses I attended during my Bachelor were Java oriented with some C#, C and Haskell prog

Wed, 26 Nov 2008 01:00:00 +0000

JFace Table API with Eclipse RCP

Today I had to create a new view inside on an Eclipse RCP application representing data inside a tabl

Thu, 20 Nov 2008 01:00:00 +0000

Haskell type conversions: converting a String to Int

Today I just finished my battle-ship game written completely in functional programming (using Haskell

Wed, 19 Nov 2008 01:00:00 +0000

Persisting the current perspective state of an RCP

If you're developing on Eclipse RCP applications it may be interesting to save the perspective layout

Sat, 15 Nov 2008 01:00:00 +0000

HowTo: execute a file download from Windows command line

Under Linux it is often very comfortable to download files quickly from within the shell by typing wg

Mon, 10 Nov 2008 01:00:00 +0000

The type X is not accessible due to restriction on the...

For some university course we currently have to modify an Open Source application with LOC > 50,00

Sun, 09 Nov 2008 01:00:00 +0000

Strange focus behavior on Firefox 3+

Apparently it seems as if Firefox has changed the way the focus is set on the page starting with vers

Thu, 06 Nov 2008 01:00:00 +0000

Verifying command line parameters on C++ main method

Just a very quick example on how to verify the correct number of command-line parameters on a C++ (or

Tue, 04 Nov 2008 01:00:00 +0000

Problem: launching javascript from hyperlinks without redirecting

When I'm launching javascripts on a webpage I often use hyperlinks instead of buttons (it depends how

Wed, 29 Oct 2008 01:00:00 +0000

Javaforge causing a lot of problems

I'm currently developing an open source application for a University course. So as usually I establis

Tue, 28 Oct 2008 01:00:00 +0000

C/C++ programming on Linux

For a course at the university we have to develop a system using C++ on Linux. Being from the Java an

Sat, 25 Oct 2008 00:00:00 +0000

Haskell functional programming

Did you ever hear something about functional programming? I'm sure you did, and if you didn't you sho

Sun, 12 Oct 2008 00:00:00 +0000

Linux main menu bars (top and bottom) disappeared

Linux (Ubuntu) is generally great...and still I must admit that most often ones habits are stronger I

Sun, 05 Oct 2008 00:00:00 +0000

Fighting around with VIM

Today I attended the first lectures of the Master in Computer Science. Yes, I decided to go back to U

Fri, 03 Oct 2008 00:00:00 +0000

HowTo: Create 'linked tables' in MS Access

Assume you have to migrate some historical data from an application which used an MS Access database

Thu, 02 Oct 2008 00:00:00 +0000

Best practices: Deploying webapps

I don’t really know whether you want to consider this a “best practices” or not, bu

Thu, 25 Sep 2008 00:00:00 +0000

Revised: Changed values of readonly and disabled fields....

In a previous post I wrote about the problem that the values of readonly or disabled fields are not r

Thu, 18 Sep 2008 00:00:00 +0000

Changed values of readonly and disabled fields not accessible after postback

I don't know whether you noticed this problem already. ASP.net doesn't seem to handle the viewstate o

Tue, 09 Sep 2008 00:00:00 +0000

Google Chrome: browsing the Google way

I just came back from holidays at Rhodos (very nice) and flew over my mails and see there, one notice

Thu, 04 Sep 2008 00:00:00 +0000

JavaScript onChange event handling

When you're developing web applications you'll often encounter a situation where you react on changes

Mon, 25 Aug 2008 00:00:00 +0000

Strange GWT compiler error when trying to serialize Java objects

I'm currently working on a project on my own where I'm developing a rich client by using the Google W

Sat, 16 Aug 2008 00:00:00 +0000

The Controls collection cannot be modified because...

Programming on the web (JSP, ASP.net, etc..) is quite different than programming a desktop client. On

Sat, 02 Aug 2008 00:00:00 +0000

Dynamically modifying CSS class name attributes

CSS allows you to not only define the style attributes directly like<span id="mySpan" style="font-

Thu, 24 Jul 2008 00:00:00 +0000

Extending JavaScript objects with custom functions

It is nice how JavaScript objects can be extended with additional custom functions. Today for instanc

Mon, 14 Jul 2008 00:00:00 +0000

GMap script being reused

It is always nice to see people adapt and use your work. Today I made a quick look to my blog access

Sun, 13 Jul 2008 00:00:00 +0000

Recursive version of the FindControl(..) method

I don't know why there is none already implemented in the .NET framework. Anyway it wasn't too diffic

Fri, 27 Jun 2008 00:00:00 +0000

Specifying the size of a FileUpload control on Firefox

Apparently there seems to be a problem on Firefox when you want to specify a size for a file-upload b

Fri, 27 Jun 2008 00:00:00 +0000

Testing Ajax applications

Testing the correct functioning of an application is a major issue in software development. Errors ha

Fri, 27 Jun 2008 00:00:00 +0000

IE problems with AjaxControl Toolkit's AutoComplete extender

Microsoft's .Net AjaxControlToolkit provides a nice extender for doing Ajax-enabled auto-completion b

Wed, 18 Jun 2008 00:00:00 +0000

The type [X] exists in both...

You cannot imagine how fraught this compilation error was! On average every second launch of my web a

Tue, 17 Jun 2008 00:00:00 +0000

The ViewState hell: controls loosing their values

Recently at work I encountered severe problems with the ASP.net viewstate. We have build a very nice

Thu, 12 Jun 2008 00:00:00 +0000

Finally, my Katana arrived!!

Not the usual technical post :). Finally on Thursday this week my new katana arrived. It's exactly th

Wed, 11 Jun 2008 00:00:00 +0000

Attaching client-side event handler to radio button list

If you want to react to changes on a ASP.net radio button list from the client side you have to attac

Fri, 06 Jun 2008 00:00:00 +0000

No unit tests?? Forget it!

I know a lot of people that look somehow skeptic to unit tests and unit testing in general. They see

Sat, 31 May 2008 00:00:00 +0000

Best practices: VCS usage flowchart

So now there’s the graphical representation of my yesterday’s post. Computer scientists u

Fri, 23 May 2008 00:00:00 +0000

Best practices: version control system usage

I come to the office in the morning, start Visual Studio and fetch the latest versions of the source

Thu, 22 May 2008 00:00:00 +0000

Extended User Management under XP

This will become just a very short post since I'm too tired to write a lot today. I just set up my li

Thu, 15 May 2008 00:00:00 +0000

Retrieving list of installed applications

From now and then it happens that you have to reset your workstation, meaning to reformat your hard d

Wed, 07 May 2008 00:00:00 +0000

C# refresher

Recently I changed work and am now employed at the SIAG, a local informatics company which operates m

Thu, 10 Apr 2008 00:00:00 +0000

Noo! Google Browser Sync deleted my Firefox bookmarks

I'm using Google Browser Sync already for a longer time since it is quite comfortable for synchronizi

Mon, 24 Mar 2008 01:00:00 +0000

Logical separation with MVC

I'm currently working on a personal project (which I'll publish here, so keep an eye on my blog ;) )

Sat, 22 Mar 2008 01:00:00 +0000

Beside hacking each day...

...at the computer, I recently started a non-computer-science-related project :) , one where I was ab

Tue, 18 Mar 2008 01:00:00 +0000

Java Generics: C++ class templates vs. Java class generics

Generics are a great thing. C++ already had already a similar mechanism called templates. This for in

Mon, 17 Mar 2008 01:00:00 +0000

My new domain: js-development.com

Right! That's my new domain. Finally I've bought one. I planned to do that already for a longer time,

Fri, 14 Mar 2008 01:00:00 +0000

Congratulations Dott.ssa Stefanie Franchi

I'd like to take the occasion to congratulate my girlfriend Dottoressa Stefanie Franchi to her succes

Sat, 26 Jan 2008 01:00:00 +0000

Creating simple backups with WinRAR

When I'm working on some code for a program I'm developing, I got into the habit of creating regular

Thu, 10 Jan 2008 01:00:00 +0000

Roundup of blogging-year 2007

It's 2008!! I hope everybody of you had a good start. Well, I've seen that many bloggers post some ki

Thu, 03 Jan 2008 01:00:00 +0000

Unknown protocol: d

Today morning when starting a general build of the project I'm currently working on, I got an error s

Sun, 30 Dec 2007 01:00:00 +0000

Speakers don't mute when plugging in headphones!

As you may have recognized from the last post I start using Linux more often. With the new upgrade to

Thu, 27 Dec 2007 01:00:00 +0000

Where has Beryl gone??

Yesterday I upgraded Ubuntu to the new 7.10 (Gutsy) version. I don't know whether you've read a post

Sun, 23 Dec 2007 01:00:00 +0000

Learning by understanding and reusing code, not by copying!!

Time ago - as you may have already read on this blog here - I started to experiment with the GME API.

Fri, 14 Dec 2007 01:00:00 +0000

News Mapper experiences a revival

After I first published my Google Mashup project "News Mapper", it immediately got published first on

Thu, 13 Dec 2007 01:00:00 +0000

Red-Green color deficiency: whats that??

Well, it is a special kind of color blindness and I'm actually one of those guys affected by it. Rece

Mon, 10 Dec 2007 01:00:00 +0000

Clean up your folder

It's actually not really worth to put a post about this...but anyway :) I recently coded just a simpl

Thu, 06 Dec 2007 01:00:00 +0000

TDD, JUnit 3.8 and JUnit 4

I don't know whether you already got in touch with Unit testing or TDD (Test-driven development). At

Tue, 27 Nov 2007 01:00:00 +0000

Mapplets on own website: illegal???

Today morning Alex - a friend of mine - wrote me a mail, pointing me to a pcwelt.de article with the

Fri, 16 Nov 2007 01:00:00 +0000

News Mapper has success!

My recent News Mapper mashup seems to have some success (at least for me :) ). Today I registered 114

Wed, 31 Oct 2007 01:00:00 +0000

News Mapper: A mashup experience with the Google Mashup Editor

Now in the two weeks after my successful graduation and before starting to work I found some space fo

Mon, 29 Oct 2007 01:00:00 +0000

Blog Action Day: Water pollution and waste

Yes, the title is right ;). I know that I usually post computer science related stuff on my blog here

Mon, 15 Oct 2007 00:00:00 +0000

Blog(ger's) Action Day

I'd like to to do a little promotion of the Blog Action Day since I find the idea quite useful and in

Wed, 10 Oct 2007 00:00:00 +0000

Appearing on BlugPulse

On Sunday 02 this blog was listed on the 6th position in the BlogBites section of BlogPulse. Accordin

Tue, 04 Sep 2007 00:00:00 +0000

3-column-blog-layout

Some of my blog-readers may have noticed the change in my layout. At the moment I'm just testing it (

Mon, 30 Jul 2007 00:00:00 +0000

How to close Safari 3 for Win?? It's easy, just add a bookmark!

Why that?? Simply because adding (or better trying to add) a bookmark will result in a total crash of

Fri, 22 Jun 2007 00:00:00 +0000

Qi Gong

Last week tuesday was my birthday and I received a nice set of "Qi Gong" balls (see picture) from my

Wed, 23 May 2007 00:00:00 +0000

What now: Program Files or Programme??

A friend of mine has recently acquired a new Dell notebook with a German copy of Windows Vista. On th

Sat, 28 Apr 2007 00:00:00 +0000

Syntax highlighting on Blogger

I recently found a JavaScript and CSS based syntax highlighting framework called dp.SyntaxHighlighter

Fri, 20 Apr 2007 00:00:00 +0000

Beryl window manager

Some time ago, I wrote a post regarding Ubuntu where I also mentioned about the nice visual effects p

Tue, 17 Apr 2007 00:00:00 +0000

Logging is useful

When I develop some application, I usually add a logging functionality to it. I find logging useful,

Tue, 03 Apr 2007 00:00:00 +0000

Vista and stability??

I don't have yet installed the new - so much promoted - operating system of Microsoft: Windows Vista,

Wed, 28 Mar 2007 00:00:00 +0000

When Windows tray-icons disappear misteriously

Recently when starting my computer, I noticed that some icons were missing in the notification area (

Fri, 16 Mar 2007 01:00:00 +0000

The first step in a long way....

I've always been a sporty person :). Already in elementary school I started to play soccer in a team,

Tue, 13 Mar 2007 01:00:00 +0000

Diving into a new area

I never really got into the Linux world. Last year I installed Suse Linux, but I used it rarely, main

Sun, 04 Mar 2007 01:00:00 +0000

Smiley-support for blog-entries

I like it to add smileys to my posts, since I find they make it much more personally. On my old homep

Tue, 13 Feb 2007 01:00:00 +0000

Moving to a new home...

The step is done... :) After Blogger left its beta phase, I entertained the idea of moving my current

Fri, 09 Feb 2007 01:00:00 +0000

Jens Oliver Meiert

When to use img, img@srcset, and picture and source

I’ve disliked srcset and the whole family of ideas around it from the start because doing the same th

Wed, 17 Jul 2019 13:25:25 +0000

13 Leadership Mistakes and How to Avoid Them

We’ve all seen approaches to team management and leadership that work, and others that don’t. A brief

Mon, 08 Jul 2019 13:54:54 +0000

Image Compression: How to Super-Easily Set Up Automated Base Optimization

Setting up image compression tooling is easy—and for those who want to err on the safe side automatic

Mon, 24 Jun 2019 18:26:24 +0000

The Problem with Web Development Checklists, or: The Frontend Checklist, Revised

Checklists are a great way to make sure nothing gets forgotten, yet they are problematic when they co

Wed, 19 Jun 2019 14:08:27 +0000

3 Reasons Against Ad Blockers

Ad blockers are popular. Yet, they also appear to be a problem. They appear to be a problem that can

Fri, 31 May 2019 15:03:36 +0000

Understanding Image Compression: Tooling and Context

Image compression is an important part of performance optimization. It seems straight-forward but is

Wed, 22 May 2019 05:12:28 +0000

A Crime Called Favicon

16×16, 30×30, 32×32, 48×48, 57×57, 60×60, 64×64, 70×70, 72×72, 76×76, 90×90, 96×96, 114×114, 120×120,

Thu, 09 May 2019 18:39:24 +0000

How Can We Make Website Maintenance Work More Visible?

The maintenance and maintainability of websites is a much neglected topic. This is problematic becaus

Wed, 24 Apr 2019 19:33:25 +0000

Counter the Happiness Assumption

It may be rather clear that life is not all about being happy.

Tue, 16 Apr 2019 21:14:33 +0000

199 Love Haiku (the Book)

In 2016, I wrote 1,000 short poems, haiku-style. I wrote those poems to challenge myself as a writer.

Tue, 09 Apr 2019 20:05:21 +0000

Print Styling, the 3 Basics

Many sites are not prepared for print, and yet our users print, and they save through print. Therefor

Fri, 05 Apr 2019 19:06:12 +0000

Optional @lang

The lang attribute is one of HTML’s global attributes. If one doesn’t simply take it for granted, it

Thu, 21 Mar 2019 20:58:08 +0000

What Happened on Google+, the Web Development Archives

Following a few philosophy posts to be archived, here are past entries related to web development. No

Sat, 09 Mar 2019 10:11:59 +0000

What Happened on Google+, the Philosophy Archives

Google+ is shutting down, pulling everything with it. I’ve used Google+. And although I’ve changed an

Fri, 08 Mar 2019 20:18:33 +0000

HTML and Performance: Leave Out Optional Tags and Quotes

As experts we should know what code is optional and leave it out, and our production systems should d

Tue, 29 Jan 2019 16:40:21 +0000

Google Lighthouse and PWA

A review of Lighthouse’s PWA audits and the PWA category as a whole. Just in time to see it be supers

Thu, 17 Jan 2019 19:02:30 +0000

On Performance Visions, or: Performance Optimization Is a Process

It’s smart to have a vision for what one wishes to achieve for the performance of a site or app. Yet

Tue, 04 Dec 2018 18:43:02 +0000

Should Designers Code

Arguments for a “no” to a recurring question: Why we may want to give designers all freedom in the wo

Fri, 23 Nov 2018 20:01:55 +0000

Performance Rule #1: Do What You Need to Do—But Not More

Web Performance has over the age of the Web not only turned into a discipline by itself, but also a c

Tue, 13 Nov 2018 05:57:03 +0000

How to Configure Lighthouse for Balanced Quality Websites

Google’s Lighthouse is a great tool even though it has some issues. Fortunately, it’s possible to con

Mon, 15 Oct 2018 12:58:19 +0000

The One Thing We May Really Want to Research

My back-burner philosophical work revolves around one idea: that what creates and makes for our reali

Thu, 04 Oct 2018 17:35:11 +0000

Highlights from The Communist Manifesto (Karl Marx and Friedrich Engels)

“This organisation of the proletarians into a class, and consequently into a political party, is cont

Mon, 01 Oct 2018 21:35:53 +0000

A Short Guide to Minimal Web Development

There’s an art and even a bit of magic around simple frontend code. Writing such code comes with a fe

Tue, 25 Sep 2018 20:05:19 +0000

Web Development and the GDPR

Who shares or presents code has a special responsibility, because for both the uninitiated and the qu

Fri, 31 Aug 2018 19:16:03 +0000

Ciro Nunes

Warat Wongmaneekit

มารู้จัก Interactive Canvas บน Action On Google ที่จะทำให้เราเอาเว็บไปรันบน Action On Google ได้

หลังจากที่ Google ได้เปิดตัว Smart Display ไปเมื่อปีก่อน รวมถึงใน Google I/O ปีนี้ก็ได้มีการเปิด Nest

Sat, 15 Jun 2019 07:59:33 GMT

มีอะไรใหม่หลังงาน AMP conf บ้าง

เมื่อวันที่ 17–18 เมษายนที่ผ่านมา Google จัดงาน AMPconf ขึ้นที่ญี่ปุ่น มี feature หลายๆอย่างของ AMP ท

Wed, 15 May 2019 03:49:52 GMT

Carousel ฝันร้ายของคน Optimize เว็บ

ก่อนอื่นถ้าใครไม่รู้จัก Carousel ลองดูรูปข้างล่างก่อนครับ แล้วคุณจะร้องอ๋อว่า มันคือเจ้าสิ่งๆนี้ทำไมผ

Mon, 15 Apr 2019 11:26:10 GMT

แชร์มาแชร์กลับไม่โกงกับ Share Target API และ Web Share API

เวลาใครๆเข้าเว็บไซต์ต่างๆโดยเฉพาะ เว็บไซต์ Content คงจะติดภาพ widget ที่ใช้แชร์ที่หน้าตาแบบข้างล่างนี

Wed, 27 Mar 2019 16:01:23 GMT

เมื่อผม ต้องเปลี่ยน เว็บ Wordpress แสนช้า ให้กลายเป็น Nuxt.js และทำให้มันโหลดเร็วกว่า 1 วินาที

ก่อนอื่นต้องขอโทษด้วยที่ผมไม่สามารถเอ่ยชื่อเว็บและให้เห็น screenshot ได้ บอกได้แต่ว่า เว็��นี้เป็นเว็

Mon, 25 Feb 2019 02:47:42 GMT

Web Authentication API feature ใหม่ที่ทำจะให้คุณ login website ได้ด้วยลายนิ้วมือ และ FIDO

กว่าจะเขียนบล็อกนี้ได้ นั่งงัด code อยู่หลายวันเลยเล่าเรื่อง Web Authentication API ก่อน…พูดถึงป��ญหา

Sat, 12 Jan 2019 16:01:55 GMT

เมื่อผมย้ายมาใช้ Pixelbook ทำงานมาหนึ่งอาทิตย์

TL;DR ชอบ รอแก้บั๊คเปลี่ยนภาษา บน Linux App แล้วน่าจะใช้เยอะกว่านี้เกริ่นก่อนว่าผมได้ Pixelbook เครื่

Wed, 05 Dec 2018 16:32:39 GMT

Behind the sense of HeartLand in Chrome Dev Summit 2018

Chrome Dev Summit 2018 this year is unusual for me. I am always waiting for Chrome dev summit every y

Sat, 01 Dec 2018 15:16:29 GMT

ทำให้ Web Component คุยกันยังไงใน Micro front end architecture

เรื่องนี้คุยกับ Tanakrit Saisillapee กับ พี่พงษ์ (3DS) มาหลายครั้งมากว่าถ้าเราจะอยู่บนแนวคิด Micro fr

Mon, 26 Nov 2018 13:49:48 GMT

Micro Frontends คือ อะไรแล้วน่าใช้มั้ย

จริงๆจะเขียนอีกบล็อกนึงเกี่ยวกับ Micro Frontend แต่เดี๋ยวคนไม่เก็ท เลยสรุปคร่าวๆจากเว็บ https://micro

Sat, 03 Nov 2018 09:20:39 GMT

Minko Gechev

Dynamic imports solve all the problems, right?

Since Angular version 8, we support dynamic imports in loadChildren in the route declaration. In this

Sat, 11 May 2019 00:00:00 +0000

5 Angular CLI Features You Didn't Know About

I’ve been using Angular for years, not only the framework itself but the entire development pla

Wed, 06 Feb 2019 00:00:00 +0000

Introducing Bazel Schematics for Angular CLI

In this blog post, we want to share our new schematics for Angular CLI which provide Bazel build supp

Mon, 17 Dec 2018 00:00:00 +0000

Building TypeScript Projects with Bazel

In this blog post, we’ll make a brief introduction to what Bazel is and how we can build our Ty

Mon, 19 Nov 2018 00:00:00 +0000

Joining Google

The past five years I’ve been heavily involved in the startup space, both, here in the Silicon

Fri, 02 Nov 2018 00:00:00 +0000

Playing Mortal Kombat with TensorFlow.js. Transfer learning and data augmentation

While experimenting with enhancements of the prediction model of Guess.js, I started looking at deep

Sat, 20 Oct 2018 00:00:00 +0000

Fast, extensible, configurable, and beautiful linter for Go

About a year ago I decided to polish my Go skills. Although the language is pretty small compared to

Mon, 28 May 2018 00:00:00 +0000

Introducing Guess.js - a toolkit for enabling data-driven user-experiences on the Web

About two months ago I published my initial research[1] on data-driven bundling. A few weeks after th

Wed, 09 May 2018 00:00:00 +0000

Machine Learning-Driven Bundling. The Future of JavaScript Tooling.

In this article, I’ll introduce the early implementation of a few tools which based on techniqu

Sun, 18 Mar 2018 00:00:00 +0000

JavaScript Decorators for Declarative and Readable Code

Decorators in JavaScript are now in stage 2. They allow us to alter the definition of a class, method

Mon, 29 Jan 2018 00:00:00 +0000

3 Tricks For Using Redux and Immutable.js with TypeScript

In this post, I’ll show you a few tricks which can make your life using Immutable.js and Redux

Thu, 18 Jan 2018 00:00:00 +0000

Follow Your Dream Career with Open Source. Personal Story.

This time I’ll violate my principle to write only about purely technical topics on my blog. In

Thu, 28 Dec 2017 00:00:00 +0000

Redux Anti-Patterns - Part 1. State Management.

For the past year I’ve been working on a project which uses React with TypeScript and Redux. In

Thu, 07 Dec 2017 00:00:00 +0000

Faster Angular Applications - Understanding Differs. Developing a Custom IterableDiffer

In this article we’ll take a look at another Angular abstraction - the differs and more specifi

Fri, 17 Nov 2017 00:00:00 +0000

Faster Angular Applications - Part 2. Pure Pipes, Pure Functions and Memoization

In this post, we’ll focus on techniques from functional programming we can apply to improve the

Sun, 12 Nov 2017 00:00:00 +0000

Faster Angular Applications - Part 1. On Push Change Detection and Immutability

On AngularConnect 2017 in London, I gave a talk called “Purely Fast.” In the presentation

Sat, 11 Nov 2017 00:00:00 +0000

Understanding Dynamic Scoping and TemplateRef

This post will be dedicated to template references in Angular and dynamic scoping. Although the main

Sun, 01 Oct 2017 00:00:00 +0000

Implementing a Simple Compiler on 25 Lines of JavaScript

I already wrote a couple of essays related to the development of programming languages that I was ext

Sat, 16 Sep 2017 00:00:00 +0000

Developing Statically Typed Programming Language

In this blog post we’ll go through a sample implementation of a type checker, interpreter and a

Sat, 05 Aug 2017 00:00:00 +0000

WebVR for a Gamified IDE

In the first part of this blog post I discuss the idea of using virtual reality for gamification of m

Sun, 25 Jun 2017 00:00:00 +0000

7 Angular Tools That You Should Consider

In this article we’re going to quickly explore 7 Angular development tools which can make our e

Sun, 23 Apr 2017 00:00:00 +0000

Announcing ngrev - Reverse Engineering Tool for Angular

Have you ever been hired to work on a huge legacy Angular project with thousands of NgModules, compon

Sun, 09 Apr 2017 00:00:00 +0000

Implementing Angular's Dependency Injection in React. Understanding Element Injectors.

Recently I’ve been blogging mostly about Angular and it’s not by accident! Angular is an

Mon, 30 Jan 2017 00:00:00 +0000

Distributing an Angular Library - The Brief Guide

In this post I’ll quickly explain the minimum you need to know in order to publish an Angular c

Sat, 21 Jan 2017 00:00:00 +0000

Angular in Production

In this informal essay I’ll go through a case study of my experience in using Angular (2 and ab

Tue, 17 Jan 2017 00:00:00 +0000

Ahead-of-Time Compilation in Angular

Recently I added Ahead-of-Time (AoT) compilation support to angular-seed and got a lot of questions a

Sun, 14 Aug 2016 00:00:00 +0000

2.5X Smaller Angular 2 Applications with Google Closure Compiler

In the post “Building an Angular 2 Application for Production” we explored how we can dec

Thu, 21 Jul 2016 00:00:00 +0000

Using Stripe with Angular

Stripe offer a set of APIs which allow businesses and individuals to easily accept and manage payment

Tue, 05 Jul 2016 00:00:00 +0000

Building an Angular Application for Production

Progressive Web Applications help us build native-like web apps, thanks to amazing tools such as Serv

Sun, 26 Jun 2016 00:00:00 +0000

Implementing the Missing "resolve" Feature of the Angular 2 Router

For the last a couple of months I’m working on an Angular 2 based PWA. The more complex the app

Sat, 21 May 2016 00:00:00 +0000

Scalable Single-Page Application Architecture

In order to have better understanding of the following blog post you should be familiar with the fund

Sun, 10 Apr 2016 00:00:00 +0000

Managing ambient type definitions and dealing with the "Duplicate identifier" TypeScript error

Maintaining the angular-seed, I found out that the most common problem for developers using the proje

Mon, 28 Mar 2016 00:00:00 +0000

Static Code Analysis of Angular 2 and TypeScript Projects

So far, most of the blog posts I’ve written are tutorials; they explain how we can use given te

Mon, 29 Feb 2016 00:00:00 +0000

Enforcing Best Practices with Static Code Analysis of Angular 2 Projects

About two weeks ago I published the initial draft of a Community-driven Angular 2 Style Guide. It was

Thu, 18 Feb 2016 00:00:00 +0000

ViewChildren and ContentChildren in Angular

In this article I’m going to explain the difference between the concepts of view children and c

Sat, 23 Jan 2016 00:00:00 +0000

Dynamically Configuring the Angular's Router

Warning: This version of the Angular 2 router is now deprecated! This means that soon the used below

Wed, 30 Dec 2015 00:00:00 +0000

Angular 2 Hot Loader

A couple of months ago I watched a few talks from ReactEurope. I was truly impressed by a few of them

Mon, 26 Oct 2015 00:00:00 +0000

Lazy Loading of Route Components in Angular 2

Warning: This version of the Angular 2 router is now deprecated! This means that soon the used below

Wed, 30 Sep 2015 00:00:00 +0000