> we've discovered nothing whatsoever that is non-reproducible about the brain's structure and function,
That's probably because we have discovered little about the brain's structure and function.
> all that has to happen here is for that trend to continue
Well the field of AI in the last 40 years has made practically zero progress towards human-like intelligence , but I agree with you - the trend will likely continue.
Does anyone else find it strange that someone who has built the most successful tech company in history continually delivers the most vacuous, cliched and uninteresting technology predictions of any technology pundit?
> You don't see a lot of 12-year-olds programming the computer any more. We have created a whole generation > of "users" and I don't see an easy way to change that...
For me this is one of the most interesting aspects of the 'One Laptop per Child' (OLPC) project, which allows kids to view and change the source code for the programs they are using.
Management often requires an understanding of your business, so that you can focus your team on generating the most value to your organisation.
This is a big gap for a lot of technology people who are often focused on the nuts and bolts, but might understand (or be interested in) how their team fits into the organisation or what the business value of the technology they are creating is.
> The fragmentation of Linux distros has nothing to do with it being slowly accepted as a mainstream OS; lack of specialized apps, shaky hardware support and the usual suspects are to blame for that
Right, but they are not completely independent, eg. a consistent platform would encourage more specialized commercial apps, which in turn would attract more users.
I've travelled a bit and have visited most of the new seven wonders...
I don't know what they judge the wonders by, but a few i'd have on my list are:
* The Golden Temple, Amritsar, India (for me more beautiful than the Taj mahal)
* The Golden Gate Bridge
* Crack De Chevaliers, Syria (huge ruined Crusader fortification)
* The Potala Palace, Lhasa, Tibet. (Stunning on first sight).
* The Panama Canal
> Until Apple offers a Mail/Calendaring system that's as functional as Exchange, I don't see Apple being adopted by corporations any time soon.
There is no server solution, but for clients Mac Entourage works fine with Exchange. It is not quite as slick as Outlook but all the calendar and mail functionality works great.
I think it depends on the nature of your work, but in my experience having a proper task tracking is essential for any team working on a complex software product.
I work in an organisation with 3 developers and we have 1400 tickets in our task tracker. It would be a nightmare to coordinate it all via email. The system tracks all bugs, enhancements, nice to haves etc.
It gives you a lot of piece of mind knowing that everything is in there and will not fall through the cracks, and I can't imagine life without it.
Trac is the best free issue tracker one i've used - a lot more powerful than Mantis, Bugzilla. It has an integrated wiki - which is very useful. It also quite an active developer community and a lot of plugins and macros to do that extend the functionality. Trac now has a lot of the functionality of the commercial issue trackers - configurable workflows, SVN/CVS integration and so forth.
JIRA is a very slick commercial issue tracker. Everything is configurable, including tickets workflows - so you can use it to track every business process in your organisation. It has a companion product called Confluence which is a very nice Wiki.
Neither of them are PHP (Trac is Python and JIRA is java).
A related and somewhat provocative question that it hardly every asked is whether programmers 'peak' and are less effective after a certain age or not.
I know it's widely believed that mathematicians have already peak by their late 20s or early 30s.
I am now in my mid-30s, and i believe that my memory and ability to hold a lot of things in my mind at once has deteriorated quite a bit in the last 10-15 years. I have a lot of experience that makes up for it of course, but i think at some point i suspect i'm going to become less productive as a programmer (it may have already happened).
I don't want to contribute to ageism because i know that there are a lot of great programmers in their 40s, 50s and beyond - i just think it's an interesting question. Anyone have any opinions?
(I remember hearing that Steve Wozniak thinks that for him the magic age was around 40)
That doesn't mean there's not going to be software to buy that you can load on them coming from us. It doesn't mean we have to write it all, but it means it has to be more of a controlled environment.
Nowhere does it say there will be no third party apps available.
It's like Rasmus Lerdorf (inventor of PHP) says - if all the websites in world were written by CS majors the web would be a really boring place.
MS has always hired lots of CS PhDs, and every tech company needs people like that, but if you want to write software that excites and appeals to people you also need people who are in touch with the common person.
> As a former co-worker once put it "C++ is a professionals language"; while this sounds > at first like snobish looking down ones nose at other languages, it's not. If you're > going to be spending much of your productive work hours over some significant chunk of > your career writing code, C++ may be the language you want to do it in. If not, it's > probably not.
Yeah that's true. and i think it applies (perhaps to a lesser extent) to Java and C# too.
I find a lot the 'casual' programmers i know, eg. students, sysadmins, DBAs, hobbbiests and so forth who may work on scripts here or there, school projects, personal projects or whatever often have quite a different view of software development, and tend to not understand the value of the complex OO type-safe languages and frameworks. I'm not saying there's nothing to criticise, but just that i have noticed the trend.
A pretty common criticism of CS schools is that they don't do enough to prepare you for the 'real world'.
A lot of CS academics argue that CS courses are there to teach people to become computer scientists, and not necessarily software engineers- but of course most people who do CS do not end up as computer scientists.
Even so - most undergrad CS schools have a Software Engineering course (or even a separate degree). If your school does not have this then i would say it is a bit unusual. This is where you learn about methodologies (RUP, XP etc) and usually involve a group project or work experience.
I think it is very difficult to teach real-world skills in an isolated setting. For a start, many - if not most of your professors would never have worked as professional software developers (and if they did - it was a long time ago).
I see the CS degree as a bit like a medical or legal degree, it's pretty essential theory, but there is still going to be a number of years after in that you will be learning how to apply the theory in a real world setting.
You can jump start this by getting a summer job, or to some extent working on an open source project (of course this will have slightly different challenges).
I don't think improving your programming skills is really a worthy goal in itself.
You can be the most skilled programmer in the world, but if you just spend your time working on private projects or Top Coder or whatever then you are no use to anyone.
To many people programming is an overly academic exercise in self-improvement or entertainment, but really what is it is a valuable engineering skill that can be applied to make a positive difference in the world.
If you work on projects you are passionate about the rest will come.
Most of IE 7 seems to be functionality already found in Firefox, but I do like the new Quick Tabs feature (Ctrl-Q). This shows a mini version of all the tabs currently open and allows you to select one, in a similar way to Expose on OS X.
> 1. Canon EOS DIGITAL REBEL XT > 2. NIKON D50 > 3. Canon EOS 350D DIGITAL
> This is actually an incredibly simple idea, but a really useful one when considering a new camera to buy. Score three points for scrapers.
If you are considering buying a new camera, it might be useful to know that Canon has just this month brought out an update to the Canon Rebel XT/EOD 350D called Canon EOS 400D/Rebel XTi which has a 10 megapixel sensor, a larger LCD screen and a new dust reduction system.
> Stress is when you get given too much work to do in too short a period of time...
I think you are correct - the most common IT worker stress is caused by a combination of:
1. Having to finish tasks too quickly (ie. feeling 'rushed') OR
2. Having too many tasks to do at once (ie. feeling 'swamped' with tasks)
Both situations immediately put people in a very uncomfortable mental state.
I agree that sometimes this is a management failure, but i think you also have to take some personal responsibility for your own time management (perhaps by implementing a personal task management system such as GTD).
Net access in Tibet
on
Tibet's Mesh
·
· Score: 1, Informative
Net connectivity in Tibet is surprisingly cheap and fast, alteast in the main towns, certainly a lot better than in Dharamsala - which has broadband access, but it's a little bit unreliable.
In Tibet - even in some very remote towns, such as Nyalam, you can see rooms of kids playing MMORPG games in crowded internet cafes - with connections with a similar speed to those in Europe or the US. Of course they are sitting behind the Great Firewall but there are advantages of being part of China's very developed net infrastructure.
First off - I don't think it's possible to effectively manage tech people without having strong technical skills yourself. Your knowledge will be too superficial to make informed decisions, and in the end you just won't be respected.
In my experience it definitely pays off in the long run to get a graduate degree in CS, and it's easier to do it the first time you are at school. I'm in my early 30s and am working as a development director in a startup. I find that most of the people i deal with, other senior tech people, CTOs, senior architects, generally have a very strong formal education, Honours in BSc, M.S or Phd. There are some exceptions of course, there are many IT middle managers out there with no technology skils - but these are the people who tend to get ignored in meetings when the real decisions are being made. There are also a lot of people out there with little formal education but with the smarts to make up for it.
I see an MBA as something that makes sense to do later perhaps in your late 20s/early 30s when you have already have some management experience and are ready to move into a executive level.
> Actually, it's not a lie. I'm a CS undergrad at GA Tech, >... > They're planning to migrate their whole program to C# soon; I figure learning > that language will take me about a day and a half.
It depends what you mean by 'learning the language';)
Sure C# is not a difficult language (like Java, most of the complexity is in the APIs), and maybe you can read and understand a C# reference book in a day and a half, but I doubt you will have internalised it to the point where you are not having to constantly look stuff up.
> Suppose you wanted to stay on the forefront of Java based web development, what would you do?
To keep up with what's happening in the Java world, I'd recommend listening to the excellent Java Posse podcast and as well as reading The Server Side.
860 pages about PHP and MySql? It seems like a lot, for what are very simple technologies.
If you are an experienced programmer and want to learn PHP I would recommend reading O'Reilly's "PHP in Nutshell" book. You can read through the whole thing in less than a day and pick up most of what you will need to know. Also you cannot beat the online docs as a reference.
> we've discovered nothing whatsoever that is non-reproducible about the brain's structure and function,
That's probably because we have discovered little about the brain's structure and function.
> all that has to happen here is for that trend to continue
Well the field of AI in the last 40 years has made practically zero progress towards human-like intelligence , but I agree with you - the trend will likely continue.
Does anyone else find it strange that someone who has built the most successful tech company in history continually delivers the most vacuous, cliched and uninteresting technology predictions of any technology pundit?
> You don't see a lot of 12-year-olds programming the computer any more. We have created a whole generation
> of "users" and I don't see an easy way to change that...
For me this is one of the most interesting aspects of the 'One Laptop per Child' (OLPC) project, which allows kids to view and change the source code for the programs they are using.
Management often requires an understanding of your business, so that you can focus your team on generating the most value to your organisation.
This is a big gap for a lot of technology people who are often focused on the nuts and bolts, but might understand (or be interested in) how their team fits into the organisation or what the business value of the technology they are creating is.
> The fragmentation of Linux distros has nothing to do with it being slowly accepted as a mainstream OS; lack of specialized apps, shaky hardware support and the usual suspects are to blame for that
Right, but they are not completely independent, eg. a consistent platform would encourage more specialized commercial apps, which in turn would attract more users.
I've travelled a bit and have visited most of the new seven wonders...
I don't know what they judge the wonders by, but a few i'd have on my list are:
* The Golden Temple, Amritsar, India (for me more beautiful than the Taj mahal)
* The Golden Gate Bridge
* Crack De Chevaliers, Syria (huge ruined Crusader fortification)
* The Potala Palace, Lhasa, Tibet. (Stunning on first sight).
* The Panama Canal
> Until Apple offers a Mail/Calendaring system that's as functional as Exchange, I don't see Apple being adopted by corporations any time soon.
There is no server solution, but for clients Mac Entourage works fine with Exchange. It is not quite as slick as Outlook but all the calendar and mail functionality works great.
> For 5 employees is it really worth it?
I think it depends on the nature of your work, but in my experience having a proper task tracking is essential for any team working on a complex software product.
I work in an organisation with 3 developers and we have 1400 tickets in our task tracker. It would be a nightmare to coordinate it all via email.
The system tracks all bugs, enhancements, nice to haves etc.
It gives you a lot of piece of mind knowing that everything is in there and will not fall through the cracks, and I can't imagine life without it.
Trac is the best free issue tracker one i've used - a lot more powerful than Mantis, Bugzilla. It has an integrated wiki - which is very useful. It also quite an active developer community and a lot of plugins and macros to do that extend the functionality. Trac now has a lot of the functionality of the commercial issue trackers - configurable workflows, SVN/CVS integration and so forth.
JIRA is a very slick commercial issue tracker. Everything is configurable, including tickets workflows - so you can use it to track every business process in your organisation. It has a companion product called Confluence which is a very nice Wiki.
Neither of them are PHP (Trac is Python and JIRA is java).
A related and somewhat provocative question that it hardly every asked is whether programmers 'peak' and are less effective after a certain age or not.
I know it's widely believed that mathematicians have already peak by their late 20s or early 30s.
I am now in my mid-30s, and i believe that my memory and ability to hold a lot of things in my mind at once has deteriorated quite a bit in the last 10-15 years. I have a lot of experience that makes up for it of course, but i think at some point i suspect i'm going to become less productive as a programmer (it may have already happened).
I don't want to contribute to ageism because i know that there are a lot of great programmers in their 40s, 50s and beyond - i just think it's an interesting question. Anyone have any opinions?
(I remember hearing that Steve Wozniak thinks that for him the magic age was around 40)
> Apple needs to get over it and open this up. At $600, if you can't even get
> the geeks excited, this product has 0 chance of succeeding.
Because we were all so excited about the ipod (at $500) right?
I think we need to get over ourselves and admit we have no clue what will appeal to the general public.
Apple needs to get over it and open this up. At $600, if you can't even get the geeks excited, this product has 0 chance of succeeding.
Because we were all so excited about the ipod right ?
I think needs get over itself and admit we have no clue what will appeal to the general public.
Jobs is explicit quoted as saying:
Nowhere does it say there will be no third party apps available.
It's like Rasmus Lerdorf (inventor of PHP) says - if all the websites in world were written by CS majors the web would be a really boring place.
MS has always hired lots of CS PhDs, and every tech company needs people like that, but if you want to write software that excites and appeals to people you also need people who are in touch with the common person.
> As a former co-worker once put it "C++ is a professionals language"; while this sounds
> at first like snobish looking down ones nose at other languages, it's not. If you're
> going to be spending much of your productive work hours over some significant chunk of
> your career writing code, C++ may be the language you want to do it in. If not, it's
> probably not.
Yeah that's true. and i think it applies (perhaps to a lesser extent) to Java and C# too.
I find a lot the 'casual' programmers i know, eg. students, sysadmins, DBAs, hobbbiests and so forth who may work on scripts here or there, school projects, personal projects or whatever often have quite a different view of software development, and tend to not understand the value of the complex OO type-safe languages and frameworks. I'm not saying there's nothing to criticise, but just that i have noticed the trend.
A pretty common criticism of CS schools is that they don't do enough to prepare you for the 'real world'.
A lot of CS academics argue that CS courses are there to teach people to become computer scientists, and not necessarily software engineers- but of course most people who do CS do not end up as computer scientists.
Even so - most undergrad CS schools have a Software Engineering course (or even a separate degree). If your school does not have this then i would say it is a bit unusual. This is where you learn about methodologies (RUP, XP etc) and usually involve a group project or work experience.
I think it is very difficult to teach real-world skills in an isolated setting. For a start, many - if not most of your professors would never have worked as professional software developers (and if they did - it was a long time ago).
I see the CS degree as a bit like a medical or legal degree, it's pretty essential theory, but there is still going to be a number of years after in that you will be learning how to apply the theory in a real world setting.
You can jump start this by getting a summer job, or to some extent working on an open source project (of course this will have slightly different challenges).
I don't think improving your programming skills is really a worthy
goal in itself.
You can be the most skilled programmer in the world, but if you
just spend your time working on private projects or Top Coder or
whatever then you are no use to anyone.
To many people programming is an overly academic exercise in
self-improvement or entertainment, but really what is it is a valuable
engineering skill that can be applied to make a positive difference in
the world.
If you work on projects you are passionate about the rest will come.
Most of IE 7 seems to be functionality already found in Firefox, but I do like the new Quick Tabs feature (Ctrl-Q). This shows a mini version of all the tabs currently open and allows you to select one, in a similar way to Expose on OS X.
> 1. Canon EOS DIGITAL REBEL XT
> 2. NIKON D50
> 3. Canon EOS 350D DIGITAL
> This is actually an incredibly simple idea, but a really useful one when considering a new camera to buy. Score three points for scrapers.
If you are considering buying a new camera, it might be useful to know that Canon
has just this month brought out an update to the Canon Rebel XT/EOD 350D called
Canon EOS 400D/Rebel XTi which has a 10 megapixel sensor, a larger LCD screen
and a new dust reduction system.
> Stress is when you get given too much work to do in too short a period of time...
I think you are correct - the most common IT worker stress is caused by a combination of:
1. Having to finish tasks too quickly (ie. feeling 'rushed') OR
2. Having too many tasks to do at once (ie. feeling 'swamped' with tasks)
Both situations immediately put people in a very uncomfortable mental state.
I agree that sometimes this is a management failure, but i think you also have to take some personal responsibility for your own time management (perhaps by implementing a personal task management system such as GTD).
Net connectivity in Tibet is surprisingly cheap and fast, alteast in the main towns, certainly a lot better than in Dharamsala - which has broadband access, but it's a little bit unreliable.
In Tibet - even in some very remote towns, such as Nyalam, you can see rooms of kids playing MMORPG games in crowded internet cafes - with connections with a similar speed to those in Europe or the US. Of course they are sitting behind the Great Firewall but there are advantages of being part of China's very developed net infrastructure.
First off - I don't think it's possible to effectively manage
tech people without having strong technical skills yourself.
Your knowledge will be too superficial to make informed decisions,
and in the end you just won't be respected.
In my experience it definitely pays off in the long run to get
a graduate degree in CS, and it's easier to do it the first time you
are at school. I'm in my early 30s and am working as a
development director in a startup. I find that most of the people
i deal with, other senior tech people, CTOs, senior architects,
generally have a very strong formal education, Honours in BSc,
M.S or Phd. There are some exceptions of course, there are
many IT middle managers out there with no technology skils - but
these are the people who tend to get ignored in meetings when
the real decisions are being made. There are also a lot of people
out there with little formal education but with the smarts to
make up for it.
I see an MBA as something that makes sense to do later perhaps in
your late 20s/early 30s when you have already have some management
experience and are ready to move into a executive level.
> Actually, it's not a lie. I'm a CS undergrad at GA Tech, ...
;)
>
> They're planning to migrate their whole program to C# soon; I figure learning
> that language will take me about a day and a half.
It depends what you mean by 'learning the language'
Sure C# is not a difficult language (like Java, most of the complexity is in the APIs), and maybe you can read and understand a C# reference book in a day and a half, but I doubt you will have internalised it to the point where you are not having to constantly look stuff up.
> Suppose you wanted to stay on the forefront of Java based web development, what would you do?
To keep up with what's happening in the Java world, I'd recommend listening to the excellent Java Posse podcast and as well as reading The Server Side.
860 pages about PHP and MySql? It seems like a lot, for what are very simple
technologies.
If you are an experienced programmer and want to learn PHP I would recommend
reading O'Reilly's "PHP in Nutshell" book. You can read through the whole thing
in less than a day and pick up most of what you will need to know. Also you
cannot beat the online docs as a reference.