Compared to a lot of other languages the typing in Java is far better. In JavaScript the variables aren't typed at all and you can run into all kind of errors. Python reiterates all the classic programming problems of Basic. C is in itself not very type-safe but you can get a few compiler warnings about type mismatches.
So you better have to explain yourself what's really wrong with the type handling in Java. Maybe you program in some more obscure language?
Java really matters. It's not perfect in any way, but it works for many cases.
The good thing with an open java is that it's possible to port to a broader range of architectures with less concern for licensing issues.
Some may claim that Java is a bastard of Ada and C (or was it C++) but it's not really the case. Ada is a bit locked up in a limited market, which is a bit unfortunate - but things like that happens. If the licensing and availability of Ada had been better then we might have been programming Ada instead of Java.
And more important is that C# (C-hash as I call it) is created by Microsoft because they weren't allowed by Sun to create a diverged version of Java. And Microsoft always tries to get their own way so we will have to accept that. But some of us may still remember that there were applets around written for Microsoft's JVM and that they did only work in IE - while at the same time other applets didn't work in M$:s JVM.
Microsoft has went from being "innovative" to instead go over and just bloat their software and annoy users with user interface changes.
Another failure in the Windows world is that there are many cases where the user is just informed about lack of permissions, bot not a clue about which permission or how to rectify it. Standard procedure is to avoid logging anything i the system logs that actually can provide some more information. Especially when there is a permission problem.
Personally I run XP in classic mode (2000 style) because I have figured out that the interface has a easier structure.
There is at least one thing that Microsoft seems to have fairly right and that is the fonts provided with Windows. They are well-balanced, even the ugly fonts are still relatively easy to read. This is a point where many *NIX distributions have to improve.
But the bad side that we all have seen with XP is that it's too easy to crack and infect. This is of course caused by a few applications that doesn't work well with limited permissions. And in this the problem with the not so friendly handling of the "Run As..." handling. I'm not saying that it's impossible to use the "Run as..." function, but it's not as easy as it should have been.
As for Vista - it's probably OK as long as you run Office or a few other standard programs, but as soon as you are an advanced user you will sooner or later end up in the hell from Microsoft.
I'm all to familiar with this - being bored to death by teachers that aren't making any progress at all due to the fact that there are students just messing up and destroying the lessons. Not just by being stupid but by faking stupidity.
And a bored student can become completely unmotivated and cause really big problems - like being let loose in the chemistry lab.
That part is actually relatively easy - and you have to remember to also implement IMAPS and POP3S - and close the IMAP and POP3 services.
I have already implemented SMTPS, IMAPS and POP3S a few years ago. And it's actually not really necessary to buy a certificate if you are doing this for a closed group. Just use OpenSSL and generate your own certificate.
To send emails to others both ends have to buy an email certificate, like from Verisign.
And then some of those who voted for this law thought that encryption is very easy to crack - so easy that it doesn't matter if an email is encrypted or not. The problem with cracking encryption is that you first have to figure out which one it is - and the history is full of encryption techniques.
So in the end - this law will be a good promotor for encryption more than anything else and the monitors can continue to search with Google and not get a bit of useful information from the real criminals and terrorists.
Most people react badly to unsolicited emailed advertisements. It is likely that some of these people are already customers or potential customers. This will dissuade them from choosing your company in the future.
Occasionally I feel the urge of finding a spammer and make a good use of an iron pipe... And I suspect that others can have the same urge and if your company is identified as a spamming company it's probably a good idea to take extra safety measures. So spamming can be bad for your health.
That's a CD that mistakenly and suddenly should have passed the shredder and if someone asked for it an identical should have been produced containing a long list of email addresses on domains that only ended up on abusive sites.
But on the other hand - you should told the ISP that your company should be under spam watch and then told your boss to send the emails self!
An immediate termination would have been the correct medicine.
The only correct thing is to actually turn it around and have Opt-In lists, and anybody failing to honor the list has to pay damages.
An opt-in has to be valid at most for a year.
Unfortunately such lists wouldn't be really working either. Who does really think that spammers will care about a national law?
It's probably better to step up the efforts and require signed emails with signatures verified by a trusted authority. Anything unsigned will get junked, and it's easier to filter signed spam since each signature will be a cost for the spammer.
So soon nobody will be able to watch YouTube if the bandwidth chopping continues.
You have to pay extra for access to YouTube, UDP traffic, images in HTML, Java Applets, Embedded Flash - and you must accept that we inject some commercials in the pages you visit.
I read it as official numbers are the number of taps by "normal" police, i.e. local and FBI, probably mostly FBI.
And then we have NSA, CIA, DHS... Do you believe they will provide any kind of statistics? It's all about deniability.
And of course - there is a rule of evidence in the US, this means that illegally acquired evidence can't be used. So that in turn means that "anonymous tip" can be an acronym for wiretapping, which in turn can lead to other means of surveillance and evidence gathering. To add to this it's possible to do a setup to obtain plausible deniability. Why do you think that the US have so many different agencies that overlaps?
My guess is that even dogs like to come out finding new tracks and sniffing new scents. I would hardly define that to cause a neurotic dog. Being utterly bored is on the other hand a cause for neurotic dogs and also humans.
But when you are in your home ground you can quickly start habits and tracks that you are comfortable with.
A more interesting application of the cell phone tracking is actually that it can give planners a better understanding of the travel patterns for people. This in turn can be turned into effective public transportation, better road planning etc.
From a historical point of view it is understandable that humans do have very fixed patterns. If you know the terrain then you know where the threats may be and where to find food & other good things in life. This is why we feel awkward as soon as our favorite store remodels and currently all aisles are changed or placed in new directions.
Of course - if we were to live in an ever-changing world we would adapt to that too.
Java will probably die eventually, but that's not tomorrow.
And before that happens we will see a lot of new strange languages around. Brainfuck and Whitespace comes to mind.
In my opinion - one component that's essential for a language to be successful is that it has to be able to allow for easy low-level access as well as interfacing with databases.
JNI in Java is maybe not the easiest thing to use when accessing hardware or other low-level routines, but it works. And you have the JDBC support in Java.
I have seen Python, and it's still a flashback to original Basic code. You can easily read the statements, but the type safety is really a pain since that can cause headaches for ages to come when doing maintenance.
OK, you won't need line numbers, but that's about it... Line numbers were abolished by Basic already in the late 80's, and the similarities are too many...
Essentially this means that Python isn't really feasible to write any larger system and expect it to hold water over several years, or even decades.
What I really was after was the ability to catch the potential NPE:s already at compile-time.
Eclipse has some support for that, but it only works within a method, and not when returning a value or using a returned value, which means that there are probably a lot of code around with unnecessary null checks, which just adds overhead to applications.
But of course - testing will help, unfortunately that's not always applied.
Python et.al. are all languages that we who were there in the 80's remember with a combined horror/amusement when we had to write programs in Basic.
The lack of type-safe variables, the possibility to write unreadable code, hunt for bugs that are caused because two files are incompatible. Interpreting languages has been tried before, and they are never working for large projects that shall live for a long time and has to be maintained by a lot of different programmers.
Java may be a bastard of Ada, but at least it has some type checks built in. However, it's a bit weak on the side where the user can't control memory management in a good way. Another weakness is that methods can't be declared to allow/disallow the return of 'null' values to be detected at compile-time.
It's starting to get embarrassing for Hillary Clinton now. Time to call it a day, but maybe she knows something that we don't know since the candidate isn't selected yet.
Anyway - most policy regarding the internet will be handled by subordinates with their own agenda, so I don't think that whoever holds the office will make much difference.
I have recently finished a project with about 250k lines of Java code. It's now in production - and it's not Publishing or eCommerce.
So you better have to explain yourself what's really wrong with the type handling in Java. Maybe you program in some more obscure language?
The good thing with an open java is that it's possible to port to a broader range of architectures with less concern for licensing issues.
Some may claim that Java is a bastard of Ada and C (or was it C++) but it's not really the case. Ada is a bit locked up in a limited market, which is a bit unfortunate - but things like that happens. If the licensing and availability of Ada had been better then we might have been programming Ada instead of Java.
And more important is that C# (C-hash as I call it) is created by Microsoft because they weren't allowed by Sun to create a diverged version of Java. And Microsoft always tries to get their own way so we will have to accept that. But some of us may still remember that there were applets around written for Microsoft's JVM and that they did only work in IE - while at the same time other applets didn't work in M$:s JVM.
Another failure in the Windows world is that there are many cases where the user is just informed about lack of permissions, bot not a clue about which permission or how to rectify it. Standard procedure is to avoid logging anything i the system logs that actually can provide some more information. Especially when there is a permission problem.
Personally I run XP in classic mode (2000 style) because I have figured out that the interface has a easier structure.
There is at least one thing that Microsoft seems to have fairly right and that is the fonts provided with Windows. They are well-balanced, even the ugly fonts are still relatively easy to read. This is a point where many *NIX distributions have to improve.
But the bad side that we all have seen with XP is that it's too easy to crack and infect. This is of course caused by a few applications that doesn't work well with limited permissions. And in this the problem with the not so friendly handling of the "Run As..." handling. I'm not saying that it's impossible to use the "Run as..." function, but it's not as easy as it should have been.
As for Vista - it's probably OK as long as you run Office or a few other standard programs, but as soon as you are an advanced user you will sooner or later end up in the hell from Microsoft.
And a bored student can become completely unmotivated and cause really big problems - like being let loose in the chemistry lab.
I have already implemented SMTPS, IMAPS and POP3S a few years ago. And it's actually not really necessary to buy a certificate if you are doing this for a closed group. Just use OpenSSL and generate your own certificate.
To send emails to others both ends have to buy an email certificate, like from Verisign.
And then some of those who voted for this law thought that encryption is very easy to crack - so easy that it doesn't matter if an email is encrypted or not. The problem with cracking encryption is that you first have to figure out which one it is - and the history is full of encryption techniques.
So in the end - this law will be a good promotor for encryption more than anything else and the monitors can continue to search with Google and not get a bit of useful information from the real criminals and terrorists.
Occasionally I feel the urge of finding a spammer and make a good use of an iron pipe... And I suspect that others can have the same urge and if your company is identified as a spamming company it's probably a good idea to take extra safety measures. So spamming can be bad for your health.
All our products contains organic and non-organic material.
What you as a buyer choses to do with them isn't our problem.
And what if it isn't? It may be all bait!
Just send that email from a GMail or Hotmail account and then forget about that account.
But on the other hand - you should told the ISP that your company should be under spam watch and then told your boss to send the emails self!
An immediate termination would have been the correct medicine.
An opt-in has to be valid at most for a year.
Unfortunately such lists wouldn't be really working either. Who does really think that spammers will care about a national law?
It's probably better to step up the efforts and require signed emails with signatures verified by a trusted authority. Anything unsigned will get junked, and it's easier to filter signed spam since each signature will be a cost for the spammer.
You have to pay extra for access to YouTube, UDP traffic, images in HTML, Java Applets, Embedded Flash - and you must accept that we inject some commercials in the pages you visit.
I think that they are there more for us to think we are monitored all the time and then occasionally we may happen to end up on YouTube.
And then we have NSA, CIA, DHS... Do you believe they will provide any kind of statistics? It's all about deniability.
And of course - there is a rule of evidence in the US, this means that illegally acquired evidence can't be used. So that in turn means that "anonymous tip" can be an acronym for wiretapping, which in turn can lead to other means of surveillance and evidence gathering. To add to this it's possible to do a setup to obtain plausible deniability. Why do you think that the US have so many different agencies that overlaps?
But when you are in your home ground you can quickly start habits and tracks that you are comfortable with.
A more interesting application of the cell phone tracking is actually that it can give planners a better understanding of the travel patterns for people. This in turn can be turned into effective public transportation, better road planning etc.
From a historical point of view it is understandable that humans do have very fixed patterns. If you know the terrain then you know where the threats may be and where to find food & other good things in life. This is why we feel awkward as soon as our favorite store remodels and currently all aisles are changed or placed in new directions.
Of course - if we were to live in an ever-changing world we would adapt to that too.
- X has been employed by us - X has been the cause for a disaster that we don't want to talk about and we have 'suggested' that he ended the employment.
- X has been working for us during N years. - X has been the cause for several near disasters during the years he has been working for us.
- X has been doing a good job - X is not a very remarkable person, neither good or bad. (average joe)
- X has been doing a very good job - X doesn't produce disasters, and delivers a bit above average without any real surprises.
- X has been doing an excellent job - We would recommend you to employ X, but don't pay him too much!
- X has been doing an outstanding job - You are stupid if you don't employ X.
- X has been a cornerstone in our company. - We are fu*d stupid to let him have reasons to leave us.
And in general - if an old employer gives incorrect references that can come back to bite them really hard, so that is very seldom a problem.Anyone remember Jackson Structured Programming?
And before that happens we will see a lot of new strange languages around. Brainfuck and Whitespace comes to mind.
In my opinion - one component that's essential for a language to be successful is that it has to be able to allow for easy low-level access as well as interfacing with databases.
JNI in Java is maybe not the easiest thing to use when accessing hardware or other low-level routines, but it works. And you have the JDBC support in Java.
OK, you won't need line numbers, but that's about it... Line numbers were abolished by Basic already in the late 80's, and the similarities are too many...
Essentially this means that Python isn't really feasible to write any larger system and expect it to hold water over several years, or even decades.
Eclipse has some support for that, but it only works within a method, and not when returning a value or using a returned value, which means that there are probably a lot of code around with unnecessary null checks, which just adds overhead to applications.
But of course - testing will help, unfortunately that's not always applied.
Before 1.5 it was harder to avoid those dreaded ClassCastException:s that you could get from Lists and Maps.
But it's still the NullPointerExceptions left to take care of.
The lack of type-safe variables, the possibility to write unreadable code, hunt for bugs that are caused because two files are incompatible. Interpreting languages has been tried before, and they are never working for large projects that shall live for a long time and has to be maintained by a lot of different programmers.
Java may be a bastard of Ada, but at least it has some type checks built in. However, it's a bit weak on the side where the user can't control memory management in a good way. Another weakness is that methods can't be declared to allow/disallow the return of 'null' values to be detected at compile-time.
Anyway - most policy regarding the internet will be handled by subordinates with their own agenda, so I don't think that whoever holds the office will make much difference.
The question may actually be: "Why buy a pre-bloated PC?"