I'd argue that there is a huge difference between getting a patch for a problem ready to go (develop/qa etc) and with what will be required for dealing with malware.
While this is quite an interesting application I do have to question the choice of a GA in this instance. Half the point of using a GA is that the fitness function should be something nice and quick. In this instance I can't see how it could be to give your kernel a "typical load".
At the heart of a GA is the selection criteria, mutation rates, mutation operators, crossover operators and the representation.
On first reading it seems to be quite aggressive and I would suspect that there is a possibility that you'd lose a lot of diversity early on. It'd be intersting to try a different selection strategy (such as roulette wheel) and see how that compares.
And this is how western developers will strike back. Quality and agility will be the differentiators that will allow western programmers to come back against outsourcing and the big corporations. Do you think Bob wants to pay lots of money to a faceless IBM exec for his system? When he's a small fish in IBM's big ocean of accounts? Or would he rather pay Charles and his small company to do it where Bob knows that he'll be Charles chief client?
Good in theory, however the representation is going to be really tricky.
Step 2 is the most important and in practice will be the most costly operation. As you say, simplisticly you're combining the best results of the population and hoping that they combine to give you a "better" solution than the last. You need to ensure that the children that you create doesn't break any rules. For example, you need to ensure you never divide a result by zero, use undeclared variables or break any other laws of whatever language is being used.
It goes against the idea of normalisation. Basicaly, normalization is a set of rules that ensures that you can store your data consistently and efficently.
I think this link here might answer your question fully.
If you'd like to know more about DB theory I'd suggest Date's book: An Introduction to Database Systems.
Thanks for your feedback. I was aware that it was going to be much cheaper to do the boot camp India (thats why I'm considering it in the first place).
However, I hadn't considered that a potential employer might react negatively to where I got my training. Good spin on it though.
Thanks for your comments, I've already got my degree.:) I agree with you that hiring based on experience is the best way to go.
However, I'm looking at getting into the contracting market where certs just seem so much more important than a degree. Where I have to get past a number of clueless salesmen acting as recruitment consultants who are desperately trying to find the certs that their clients are wanting.
But you aren't buying the stock directly from them.
It's a bit like saying I'm going to show my appreciation of Spielberg by buying E.T. 2nd hand one from this guy I met down the bar. They aren't going to see a penny of it. Since Google is so cash rich they are less likely to fret about the position of their share price.
>Tom Greene writing something insightful and instructive?
>Well, that would be a first I suppose, him and Orlowski (sp?) are the two biggest problems the reg has IMHO.
Disagree, Greene is a great writer and has written excellent articles for the register explaining to newbies and power users how to secure linux You could say its "insightful" and maybe even "instructive"...
Your guess and my guess will probably be different due to different influences.
The theory goes, if you take a large enough sample of opinions from a mixture of sources, tech experts, financial experts, normal people the market prediction (i.e. the average of all the guesses) will be a closer guess than any one single expert.
It isn't like gambling on a slot machine as a slot machine is pretty much a game of chance and odds.
I'd suggest that you might find The Wisdom of Crowds by James Surowiecki useful, if your really interested in how these kind of decision markets work.
I'm torn on this article, I kind of agree with what he's saying but for a different reason.
I think its pretty obvious that if a developer stays in a particular industry for an extended period of time they grow familiar with the domain and the type of problems that companies face in that domain. So for example if I'm developing software for the retail sector I understand the lingo, if I'm developing for the financial sector I'm not puzzled by "industry norms" or TLAs.
I think thats a fine way for a developer to capture his knowledge, but unless he builds the libraries and shares them it isn't very reusable.
Let say that it happens (I'll talk more about how it could happen later), there is still a lot of complexity left in the problem. Unless the captured knowledge/library is 100% spot on in terms of quality (and even if it is!) the coordination of such software will be a very complicated task.
I can however see this playing out in a good scenario. To build such a tool, I would have to have a great understanding of my problem domain, not to mention excellent technical understanding of a particular architecture and platform. As a Developer I would have to have a great incentive to build a library that incapsulated my knowledge about this particular domain, such a developer is likely to be highly in demand.
I think Developers in this scenario would be likely to form into small companies and develop their expertise in thier specialised industry and technologies. Said software could then be licensed/developed for clients or other developers building more sophisticated solutions. It's not entriely unlike a law practice - I don't goto a lawyer who specialise in divorce about my tax problems do I? I'd goto one who specialises in tax problems and I'd probably have to pay more for it.
As others have commented, it sounds like your project has a number of problems. First off, you've got issues with scoping and specing your project before hand.
What you also have to remember is that clients have different motives: some will lead the uptake of technology and be interested in ground breaking ideas. Others will only adopt technology after its proven and others will lag behind.
What you have here is a customer who is interested in presenting an image to the customer that is consistent with that of companies in the market place. If you want to sell more to him, you either have to educate him about the benefits of your new systems. (which lagards might not care about) Lagards are more likely to be driven by a loss condition than a gain condition that is to say: Company A has a website, we better have one like theres too as we're losing out!
Working with something thats a bit more cutting edge and exciting is wonderful. But most companies aren't looking for technology to differentiate from the competition. It's right to be interested in presenting the companies with different options and indeed to push for one solution, citing your experience and expertise. But, the cold fact of the matter is that many customers believe that they know best. Generally, they are unwilling to accept a long process and they want to see results. There will always be that tension between a developers desire to plan and the urgency of the business.
Reading between the lines, I think your concerned about how this project looks to future clients. You might be thinking you haven't differentiated yourself in the employment marketplace. If this is the case, show a little humility and rack it up as a case of being a team player and doing whats right for their business. Although it might not seem like it that teamwork quality of doing what is best for the group is something that employers look for.
Ah well, I couldn't start until 6 CET as I was working. Still managed to run off three of the puzzles and I would have gotten B2 as well if it wasn't for running out of time by about a minute!:(
Hope they continue to do this, but it would be better (for me anyway:)) if they could do it on a saturday or something.
If you'd read the website you would have seen that the goal of the project is to allow the University to showcase the talents of its students and staff.
What many people forget is that there are a whole lot of people coming out with degrees in comp sci and se, you have to make yourself stand out from the pack. This is a great way for them to do it.
I doubt this initiative is about trying to make any money from linux, its about making students more employable after they graduate.
I think having a Postgraduate qualification will be looked in a very favourable light by most employers. (Its something that I've decided to do myself)
Naturally, some areas of IT won't really care about it - networks and support spring to mind.
I would however take comfort in that your PhD will open up all sort of research and advanced computing jobs to you. In an era where more and more IT jobs are being outsourced I think it makes a lot of sense to complete a postgraduate course. Research jobs can't be outsourced as easily and you can be reasonably sure that the academic route will still be available.
As well as the more advanced computing/research jobs, you'll find that companies in same area as your PhD, will value it highly.
Perhaps you should consider what you'll get out of your PhD and what you want to do after. Doesn't hurt to seek professional careers advice either:) Certainly in the UK, you can get it for free (don't know about elsewhere) through the universities careers service - www.prospects.ac.uk also has a section on postgraduate courses and the motivations for doing one.
Hope thats helpful
I'm a few provinces over from the guy in the article (BC, Canada), but England's public transit system is far superior to anything we have in Canada, and anything I've seen in the states.
That's the first thing that struck me the first time I visited England - cellular technology (incl. WAP) is far, far more widespread and advanced (just about everyone--senior or 8-year-old, has a cell), and the public transit system (esp. the underground) is incredible... you can get just about anywhere via bus/tube... whereas out here, if you don't have a car, you're basically screwed.
I agree with a few of your points. As a Scot living in Ottawa I do agree that it can be difficult not having a car in some parts of Canada, but there is no way in hell that any bus system in the UK is anywhere near Ottawa's transitway system (Screens on all major stops and a phone number that when used with any stop number automaticaly gives you the time that the next busses will arrive at.)
London is really the only British city with such an extensive focus on the underground simply because its expensive to build.
Sadly, even the British railway system seems to put Canada's railways to shame;)
I do agree on the use of celluar technology, but the real leader is the scandanavians.
Ah but as you've said yourself, you get a bunch of spam and a bunch of non spam. You would simply have to insure that the non spam messages include a proportion of sample HTML E-Mail messages to insure that the classifier isn't just going to base it on HTML content.:)
I'd argue that there is a huge difference between getting a patch for a problem ready to go (develop/qa etc) and with what will be required for dealing with malware.
While this is quite an interesting application I do have to question the choice of a GA in this instance. Half the point of using a GA is that the fitness function should be something nice and quick. In this instance I can't see how it could be to give your kernel a "typical load".
At the heart of a GA is the selection criteria, mutation rates, mutation operators, crossover operators and the representation.
On first reading it seems to be quite aggressive and I would suspect that there is a possibility that you'd lose a lot of diversity early on. It'd be intersting to try a different selection strategy (such as roulette wheel) and see how that compares.
I've used Net Transport as well and agree that it's pretty fab for the above problem.
And this is how western developers will strike back. Quality and agility will be the differentiators that will allow western programmers to come back against outsourcing and the big corporations. Do you think Bob wants to pay lots of money to a faceless IBM exec for his system? When he's a small fish in IBM's big ocean of accounts? Or would he rather pay Charles and his small company to do it where Bob knows that he'll be Charles chief client?
Good in theory, however the representation is going to be really tricky.
Step 2 is the most important and in practice will be the most costly operation. As you say, simplisticly you're combining the best results of the population and hoping that they combine to give you a "better" solution than the last. You need to ensure that the children that you create doesn't break any rules. For example, you need to ensure you never divide a result by zero, use undeclared variables or break any other laws of whatever language is being used.
This is also known as Genetic Programming.
It's actualy What Would Johnny Damon Do?
It goes against the idea of normalisation. Basicaly, normalization is a set of rules that ensures that you can store your data consistently and efficently.
I think this link here might answer your question fully.
If you'd like to know more about DB theory I'd suggest Date's book: An Introduction to Database Systems.
Thanks for your feedback. I was aware that it was going to be much cheaper to do the boot camp India (thats why I'm considering it in the first place). However, I hadn't considered that a potential employer might react negatively to where I got my training. Good spin on it though.
Thanks for your comments, I've already got my degree. :) I agree with you that hiring based on experience is the best way to go.
However, I'm looking at getting into the contracting market where certs just seem so much more important than a degree. Where I have to get past a number of clueless salesmen acting as recruitment consultants who are desperately trying to find the certs that their clients are wanting.
The most profitable area of their business; services.
[blockquote]but who cares as long as the stock value stays up long enough to sell?[/blockquote]
The customer:)
But you aren't buying the stock directly from them.
It's a bit like saying I'm going to show my appreciation of Spielberg by buying E.T. 2nd hand one from this guy I met down the bar. They aren't going to see a penny of it. Since Google is so cash rich they are less likely to fret about the position of their share price.
>Tom Greene writing something insightful and instructive?
>Well, that would be a first I suppose, him and Orlowski (sp?) are the two biggest problems the reg has IMHO.
Disagree, Greene is a great writer and has written excellent articles for the register explaining to newbies and power users how to secure linux You could say its "insightful" and maybe even "instructive"...
The point is quite simple.
Your guess and my guess will probably be different due to different influences.
The theory goes, if you take a large enough sample of opinions from a mixture of sources, tech experts, financial experts, normal people the market prediction (i.e. the average of all the guesses) will be a closer guess than any one single expert.
It isn't like gambling on a slot machine as a slot machine is pretty much a game of chance and odds.
I'd suggest that you might find The Wisdom of Crowds by James Surowiecki useful, if your really interested in how these kind of decision markets work.
I'm torn on this article, I kind of agree with what he's saying but for a different reason.
I think its pretty obvious that if a developer stays in a particular industry for an extended period of time they grow familiar with the domain and the type of problems that companies face in that domain. So for example if I'm developing software for the retail sector I understand the lingo, if I'm developing for the financial sector I'm not puzzled by "industry norms" or TLAs.
I think thats a fine way for a developer to capture his knowledge, but unless he builds the libraries and shares them it isn't very reusable.
Let say that it happens (I'll talk more about how it could happen later), there is still a lot of complexity left in the problem. Unless the captured knowledge/library is 100% spot on in terms of quality (and even if it is!) the coordination of such software will be a very complicated task.
I can however see this playing out in a good scenario. To build such a tool, I would have to have a great understanding of my problem domain, not to mention excellent technical understanding of a particular architecture and platform. As a Developer I would have to have a great incentive to build a library that incapsulated my knowledge about this particular domain, such a developer is likely to be highly in demand.
I think Developers in this scenario would be likely to form into small companies and develop their expertise in thier specialised industry and technologies. Said software could then be licensed/developed for clients or other developers building more sophisticated solutions. It's not entriely unlike a law practice - I don't goto a lawyer who specialise in divorce about my tax problems do I? I'd goto one who specialises in tax problems and I'd probably have to pay more for it.
I agree, Audiobooks are brilliant. Great selection of audiobooks here. Download, stick it on your IPod and your away!:)
As others have commented, it sounds like your project has a number of problems. First off, you've got issues with scoping and specing your project before hand.
What you also have to remember is that clients have different motives: some will lead the uptake of technology and be interested in ground breaking ideas. Others will only adopt technology after its proven and others will lag behind.
What you have here is a customer who is interested in presenting an image to the customer that is consistent with that of companies in the market place. If you want to sell more to him, you either have to educate him about the benefits of your new systems. (which lagards might not care about) Lagards are more likely to be driven by a loss condition than a gain condition that is to say: Company A has a website, we better have one like theres too as we're losing out!
Working with something thats a bit more cutting edge and exciting is wonderful. But most companies aren't looking for technology to differentiate from the competition. It's right to be interested in presenting the companies with different options and indeed to push for one solution, citing your experience and expertise. But, the cold fact of the matter is that many customers believe that they know best. Generally, they are unwilling to accept a long process and they want to see results. There will always be that tension between a developers desire to plan and the urgency of the business.
Reading between the lines, I think your concerned about how this project looks to future clients. You might be thinking you haven't differentiated yourself in the employment marketplace. If this is the case, show a little humility and rack it up as a case of being a team player and doing whats right for their business. Although it might not seem like it that teamwork quality of doing what is best for the group is something that employers look for.
Ah well, I couldn't start until 6 CET as I was working. Still managed to run off three of the puzzles and I would have gotten B2 as well if it wasn't for running out of time by about a minute!:(
:)) if they could do it on a saturday or something.
Hope they continue to do this, but it would be better (for me anyway
If you'd read the website you would have seen that the goal of the project is to allow the University to showcase the talents of its students and staff.
What many people forget is that there are a whole lot of people coming out with degrees in comp sci and se, you have to make yourself stand out from the pack. This is a great way for them to do it.
I doubt this initiative is about trying to make any money from linux, its about making students more employable after they graduate.
Exactly like it from the sounds of things... We've had them for what? a couple of years now?
I think having a Postgraduate qualification will be looked in a very favourable light by most employers. (Its something that I've decided to do myself) Naturally, some areas of IT won't really care about it - networks and support spring to mind. I would however take comfort in that your PhD will open up all sort of research and advanced computing jobs to you. In an era where more and more IT jobs are being outsourced I think it makes a lot of sense to complete a postgraduate course. Research jobs can't be outsourced as easily and you can be reasonably sure that the academic route will still be available. As well as the more advanced computing/research jobs, you'll find that companies in same area as your PhD, will value it highly. Perhaps you should consider what you'll get out of your PhD and what you want to do after. Doesn't hurt to seek professional careers advice either :) Certainly in the UK, you can get it for free (don't know about elsewhere) through the universities careers service - www.prospects.ac.uk also has a section on postgraduate courses and the motivations for doing one.
Hope thats helpful
I'm a few provinces over from the guy in the article (BC, Canada), but England's public transit system is far superior to anything we have in Canada, and anything I've seen in the states.
That's the first thing that struck me the first time I visited England - cellular technology (incl. WAP) is far, far more widespread and advanced (just about everyone--senior or 8-year-old, has a cell), and the public transit system (esp. the underground) is incredible... you can get just about anywhere via bus/tube... whereas out here, if you don't have a car, you're basically screwed.
I agree with a few of your points. As a Scot living in Ottawa I do agree that it can be difficult not having a car in some parts of Canada, but there is no way in hell that any bus system in the UK is anywhere near Ottawa's transitway system (Screens on all major stops and a phone number that when used with any stop number automaticaly gives you the time that the next busses will arrive at.)
London is really the only British city with such an extensive focus on the underground simply because its expensive to build.
Sadly, even the British railway system seems to put Canada's railways to shame;)
I do agree on the use of celluar technology, but the real leader is the scandanavians.
Just wondering but some of these pictures of 'debris' appear to me to be fake.
Surely, there would be larger craters (of what didn't burn up). Anyone got any thoughts or theories?
Ah but as you've said yourself, you get a bunch of spam and a bunch of non spam. You would simply have to insure that the non spam messages include a proportion of sample HTML E-Mail messages to insure that the classifier isn't just going to base it on HTML content. :)
That can be found here:i de.html
http://www.lysator.liu.se/mit-guide/mit-gu