Discuss why the data types are the same across languages in the MSIL.
The data types in the different languages in the Microsoft Intermediate Language (MSIL) to provide compatibility. In .NET, various languages can be used but in the end they have to be able to interface with each other. The .NET compiler compiles the languages into MSIL and it can only do this without problems since the data types are the same. It would be incredibly difficult if each language had its own data types or its own definitions of data types. A string for example is a “group” of characters or digits and every program understands it as such. Now imagine another programming language would define a string only as a group of characters and not consider digits and a combination of characters and digits would be called a word, then the VB string cisp238 would be considered a word in the other languages and the .NET compiler would have to examine all strings to see if they need to be converted to be compatible.
I found a real world examples: In VB.NET, the data type Long is a 64-bit number while in VB6 it was a 32-bit number. So, it would require a lot of care to bring those two languages together and every time one languages uses a data type Long you would have to exactly specify what it means. The rules for the different .NET languages are specified in the Common Language Specification (CLS).
I found an interesting link about how different languages define the primitive data type Boolean: http://en.wikipedia.org/wiki/Boolean_datatype which is a good example of the advantages of uniform data type definitions.
It also seems like MSIL is the great “equalizer”. People used to have arguments about the speed of different programming languages, or better the speed of the applications coded in those languages. The argument was that C++ was faster than VB but in .NET everything is going through the MSIL and that determines the speed.
Corporate Email Woes
I am usually a strong believer in the theory that an email that has been sent will also arrive in my inbox. Emails just don’t get lost just like that, even though every now and then someone may claim it happened. In all honesty, I too have claimed to have sent an email if in reality, I forgot. In the past, it was an email to my Mom to send her a photo, recipe, or something - I am pretty sure I am not the only one who has used this white lie.
Now, when it comes to business email, it’s quite different to me. The information or attachments in a business related email is usually critical to a job or a project and can have consequences. For example, if I receive a set of strings, I usually tell my developer that he can expect them back by the end of the week. My freelancers are usually very fast and I am able to estimate how long it should take them. They will let me know if they cannot make it within a reasonable amount of time but I don’t expect them to confirm every email I send. At their own discretion, they reply with an estimated delivery date or they just return the files. Considering the previous premise that emails reach their destination, I think it works fine both ways. Both sides cut down on the chit-chat back and forth a little - it’s not like we all don’t send enough emails anyway.
Unfortunately, my system has been shattered by our new overzealous email filter system. All of a sudden, emails I send are not going out, I don’t receive emails that my freelancers send - and the notification system is lacking to non-existant. First, my translator returned a translation in TTX files on Thursday. On Monday, I carefully inquired if he had received the files to which he replied he had delivered on Thursday. Quick check whit IT, of course it got caught in the mail filter because of “inappropriate language”. Haha, that would mean that either the help system contains foul language which it doesn’t (especially not since I was able to send the file out fine) or a word in the Spanish translation happens to match an English term which is on the index. No one knows, I was told there is no log listing which word was the offender. A few hours later, the translator received a note that the email he had sent Thursday could not be delivered.
Then all of a sudden, we cannot send or receive compressed attachments anymore - yes, a regular zip file is held back because who knows what’s in it. And again, no one gets a notification. The sender believes it went through, the receiver has no idea anything was blocked and the lonely email is sitting in quarantine. Apparently, this is now handled on a case by case base and the IT department checks the emails with attachment and patches them through if appropriate - a system which apparently doesn’t work very well. The reason by the way is protection against viruses I was told.
Next thing, the SDL Trados Synergy translation packages are blocked - same with the zip files, no notification, they are just quarantined. The packages are pkzipped so the system recognizes them as zip files and blocks them. At least with those, we found a solution because of the unique file extension they could write a filter rule that allows stppk out and strpk in. But even one of those was blocked recently again becasue of offensive language.
The whole thing is a major pain now. Not only do I have to confirm all email people send to me, I also need the translators to confirm they received my emails until IT gets the out-of-control email filter configured properly. In between, I also got mocked by an IT guy for being a “troublemaker” because I insist on receiving my email. Yeah, the audacity - I insist on receiving professional business emails sent by associates. Not sure if he was kidding, but I do believe before implementing a system like this, it should be looked at a little closer. I don’t even want to know how many customer emails got lost.
I am sure some freelancers have wished for an IT department that takes care of all the computer woes. Believe me, it really doesn’t work like that - woes sometimes aren’t eliminated but created ![]()