RSS
 

Archive for the ‘study references’ Category

A few things to think about

07 May

Thoughts on Google’s 20% time

With the rise of Google, no single tactic comes up more in innovation circles than their concept of 20% time. Simply put, employees get 1/5th of their time to work on projects of their own choosing. (more info can be found here)

And this:

William L. McKnight (11 November 1887 – 4 March 1978) was an American businessman and philanthropist who served his entire career in the 3M corporation, rising to chairman of the board from 1949 to 1966. He founded The McKnight Foundation in 1953.

He said:

As our business grows, it becomes increasingly necessary to delegate responsibility and to encourage men and women to exercise their initiative. This requires considerable tolerance. Those men and women, to whom we delegate authority and responsibility, if they are good people, are going to want to do their jobs in their own way.

Mistakes will be made. But if a person is essentially right, the mistakes he or she makes are not as serious in the long run as the mistakes management will make if it undertakes to tell those in authority exactly how they must do their jobs.

Management that is destructively critical when mistakes are made kills initiative. And it’s essential that we have many people with initiative if we are to continue to grow.

or you can just watch this presentation:

Scott Berkun Lecture: The Myths of Innovation

 

Form building based on theory

07 May

Form building, not basic forms containing only a name and a description, but forms that have a variety of influences, is complex.
Here is a presentation of Ryan Singer, about form creation based on a book by Christopher Alexander Notes on the Synthesis of Form.

Ryan Singer, “Designing with Forces: How to Apply Christopher Alexander in Everyday Work ” from MFA Interaction Design on Vimeo.

Especially the Q&A are interesting, be sure to listen to them too. (viewable when clicking ‘read rest of the entry’)

After reading a few books, listening to different people in presentation, I must say that experience is once again very important when creating forms.
Enjoy this  presentation, but keep in mind that form and design creation are 2 separate jobs.

I recently had a discussion with someone, and his point was that good designers can be trained from programmers.
Sadly it’s not… it’s something you have in you, just like you have the gift to be top chess player.

Read the rest of this entry »

 

Developers to follow…

05 May

If you are a developer, the best way to get the latest news or interesting links and references, is to follow some of the best developers around. I myself have a list of people I like to follow, some of them are quite known, others are not that famous but have some interesting things to say.
Here is a list of guys to follow, by blog or twitter.

Matthew Weier O’Phinney
I met him at Symfony Live 2010 and was one of the most remarkable and helpful people around. Although I’m not into Zend framework, he explained the Symfony-Zend link in 50 minutes.

I am an open source web developer and IT specialist. My expertise lies with LAMP setups — Linux – Apache – MySQL – Perl/PHP(/Python). I am capable of administering a variety of Linux distributions, including Gentoo, Debian, Red Hat, Fedora, Slackware, as well as several other Debian- and RPM-based distros. In addition, I am skilled at installing and maintaining Apache, PHP, Perl, and MySQL on each of the distros previously mentioned, typically from source.

My primary skills are as a PHP developer. I am a Zend Certified Engineer, and a member of the Zend Education Advisory Board, the group responsible for authoring the Zend Certification Exam. I contribute to a number of PHP projects, blog on PHP-related topics, and present talks and tutorials related to PHP development and the projects to which I contribute.

Read the rest of this entry »

 

The Programmer Competency Matrix

01 Apr

It’s sometimes hard to know if you are up to date with all technologies that are out there. It might be even harder to know at what points your knowledge is just not enough.

To help you on that point there is a matrix containing almost all general fields in IT that should be covered. You can see the whole matrix here.

Here is a little example on computer science.

Computer Science
2n (Level 0) n2 (Level 1) n (Level 2) log(n) (Level 3)
data structures Doesn’t know the difference between Array and LinkedList Able to explain and use Arrays, LinkedLists, Dictionaries etc in practical programming tasks Knows space and time tradeoffs of the basic data structures, Arrays vs LinkedLists, Able to explain how hashtables can be implemented and can handle collisions, Priority queues and ways to implement them etc. Knowledge of advanced data structures like B-trees, binomial and fibonacci heaps, AVL/Red Black trees, Splay Trees, Skip Lists, tries etc.
algorithms Unable to find the average of numbers in an array (It’s hard to believe but I’ve interviewed such candidates) Basic sorting, searching and data structure traversal and retrieval algorithms Tree, Graph, simple greedy and divide and conquer algorithms, is able to understand the relevance of the levels of this matrix. Able to recognize and code dynamic programming solutions, good knowledge of graph algorithms, good knowledge of numerical computation algorithms, able to identify NP problems etc.
systems programming Doesn’t know what a compiler, linker or interpreter is Basic understanding of compilers, linker and interpreters. Understands what assembly code is and how things work at the hardware level. Some knowledge of virtual memory and paging. Understands kernel mode vs. user mode, multi-threading, synchronization primitives and how they’re implemented, able to read assembly code. Understands how networks work, understanding of network protocols and socket level programming. Understands the entire programming stack, hardware (CPU + Memory + Cache + Interrupts + microcode), binary code, assembly, static and dynamic linking, compilation, interpretation, JIT compilation, garbage collection, heap, stack, memory addressing…
 

Startup of the Xobni software plug-in

24 Nov

A presentation on the start-up of Xobni (an outlook plug-in) where I do recognize the situations that we are having here at Adlogix.

Quite interesting to hear the stories of people in the same situation. Let’s hope one day, we can share our experience in the same way that Adam Smith is doing this for Xobni.

 

This might be where I’m heading….

18 Nov

I read an article today that might explain exactly what my future might bring. With my interest in Project Management and my background in IT I guess this article explains correctly how I could be an asset for a company.

http://www.projectsmart.co.uk/successful-sofware-development-its-not-rocket-science.html

One of the items Duncan Haughey talks about is the communication problem a manager can have when talking to a developer

The Mistake

Have you ever stood next to a group of software developers and wondered what on earth they were talking about. It’s like a completely new language and to non-IT people it often is. The pitfall comes when the customer and IT think they are talking the same language when in fact they are not. This leads to a problem when the IT department delivers what they understood the customer wanted and it turns out to be something different.

The Solution

Communication problems are the hardest to resolve, as often it is only looking back that the problem is identified. Regular communication and a close working relationship with the customer will help. What you really need is a person with a foot in both camps. Someone who understands the business and IT equally well. If you can identify this person make sure you keep hold of them, they are hugely valuable. If you are unable to find this person, the next best option is to have two people, one from the business and one from IT. By working closely together and sharing information, they can minimise any communication problems.

This is a huge problem indeed, but not only for the project manager. This is for the developer also a point of frustration as they have to explain complex matters several times before managers get their point. Even if you can create a good team of two people who work very close together, i guess this will not be as sufficient as one person who has the 2 qualities. Minimizing the communication problem is therefor a good description, but is only a temporary solution.

I believe that, if the company finds the budget and time, it might be better to get the IT guy some education in project management, then the other way around. Being a good, or even basic developer takes a huge amount of time (years) and asks a huge effort of the person. I am certain that teaching the IT-er how to manage project is a more efficient way because:

- takes less time to get knowledge of the theory
- can practice his learned theory in the company
- after a while can replace the project manager
- a software developer already talks the developer-talk and this is not something you learn, you have to be or been a developer
- it is one of the logical steps in a career for a developer

 

Lecture on software project management

17 Nov

Very interesting lecture of Professor Kelkar from Bombai university. It isn’t given very actively, in fact, this is a good example of how not to do lectures, or presentations. But, the man tells us very interesting things and is a good introduction.
As I am reading ‘A Guide to the Project Management Body of Knowledge, Third Edition’ this might be a quicker way of getting the needed introduction. Off course if you want to get some examples, I would recommend, not only to watch these lectures, but try to read books on any issue. They contain tons of examples, and have real world business issues explained, often experienced by the writer.

 

Prince2 – a basic introduction

16 Nov

 

becoming a team leader

13 Nov

As my interest in management and team leading is growing and, in my spare time, I’m reading more and more books about these 2 topics, I thought it might be good idea to use my blog as a future reference.

They will be brought together under the title: study references

I read a quite interesting article on how to be a good team leader, or how to be a good people manager to be more specific. It basically comes down to a few pointers:

- If you ever had one or more colleagues that you looked up to, try to copy their positive characteristics and use them in your own experiences.

- Get involved in the work your employees do, and don’t do it the dictator style. In the long run, this will get your employees to work harder for you without having the boss-fear-factor.

- Think before you talk, the mentioned Chinese proverb says it all: “If you are patient in one moment of anger, you will escape a hundred days of sorrow.”

- Try to build a network of people that can be a ‘personal advisory board’.

Those are, for me, in first instance the most important points that were mentioned in the document. Others are not less important but are self-evident, like the fact that you need to become the best you can be. This is not only for the role of manager, but in every job, if you want to build out some kind of career.

Click here to read the complete article