<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://msmvps.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Eloquence of language</title><link>http://msmvps.com/blogs/bill/archive/2004/06/27/9047.aspx</link><description>Great to see another Aussie VB guy answer the call ! Greg Low , all round nice guy even if he is from Queensland , has moved his blog onto the msmvps.com blog site. So now you can read Greg&amp;#8217;s entries from both the Aussie bloggers feed and the MS</description><dc:language>en</dc:language><generator>CommunityServer 2008.5 SP2 (Build: 40407.4157)</generator><item><title>re: Eloquence of language</title><link>http://msmvps.com/blogs/bill/archive/2004/06/27/9047.aspx#60777</link><pubDate>Tue, 02 Aug 2005 13:16:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:60777</guid><dc:creator>bill</dc:creator><description>I've been writing code for about 28 years now.  First in FORTRAN (remember it?), then C and MASM on the early PC's.  Wrote a few obscure languages like Waterloo PORT (C-Like) for awhile.&lt;br&gt;&lt;br&gt;I really did enjoy writing in C for many years.  I wrote a lot of good code in it, particularly some of the device-level stuff I did.  Heck, I even did some applications-level work with it.&lt;br&gt;&lt;br&gt;More recently, though (about 8 years ago) I discovered VB.  At first I thought &amp;quot;you got to be kidding&amp;quot; - back to BASIC?  However, it was the availability of VB (version 3 originally) that got me into Windows programming in the first place.  &lt;br&gt;&lt;br&gt;Even VB.Net with all the changes is, IMHO, a much better choice than C# is.  I can think about the problem at hand with it far better than I can with C#'s obscure dialect.  Someone said that VB is more verbose than C#.  Maybe --- but it ain't by much.  Further - I HATE the case-sensitive nature of C#.  Why the heck do we need X and x?  Fubar and FuBaR?  &lt;br&gt;&lt;br&gt;In the shop I'm in, I'm in the minority.  All the &amp;quot;hot&amp;quot; new developers want to program in C# because that's what &amp;quot;the big boys&amp;quot; say is the thing to do.  I never listened to the &amp;quot;big boys&amp;quot; ... I AM a big boy.  I'm more interested in solving the problem at hand with a tool that doesn't require that I be an expert in language features that shouldn't concern me.  At my age my brain would rather concentrate on the solution than on struggling with the tool.  VB makes that possible.&lt;br&gt;&lt;br&gt;C# ... OK, it's cool.  Use it.  As for me, I'd rather turn the key to start my car than to spend time under the hood figuring out how the starter works!  I'll already be at my destination while you are still figuring out how to start your car!&lt;br&gt;&lt;br&gt;-CB&lt;br&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=60777" width="1" height="1"&gt;</description></item><item><title>re: Eloquence of language</title><link>http://msmvps.com/blogs/bill/archive/2004/06/27/9047.aspx#35319</link><pubDate>Wed, 09 Feb 2005 08:49:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:35319</guid><dc:creator>bill</dc:creator><description>See the below interesting article:&lt;br&gt;&lt;br&gt;&lt;a target="_new" href="http://msdn.microsoft.com/vstudio/productinfo/whitepapers/default.aspx#top"&gt;http://msdn.microsoft.com/vstudio/productinfo/whitepapers/default.aspx#top&lt;/a&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=35319" width="1" height="1"&gt;</description></item><item><title>re: Eloquence of language</title><link>http://msmvps.com/blogs/bill/archive/2004/06/27/9047.aspx#13833</link><pubDate>Tue, 21 Sep 2004 05:56:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:13833</guid><dc:creator>bill</dc:creator><description>I come from a background in vb programming and i find VB.NET simply annoying. It contains too many vb functions that at times do not function exactly as they did. &lt;br&gt;&lt;br&gt;Instead of creating VB 7. Microsoft decided to create VB.NET. But instead of making it pure OO like C# they decided to retain many old VB functions. This only served to confuse the developer further.&lt;br&gt;&lt;br&gt;But one thing make me like VB.NET as opposed to C#: it is more readable.&lt;br&gt;&lt;br&gt;I like the descriptive nature of VB and i hate those curly brackets even though the first language i ever learned was pascal.&lt;br&gt;&lt;br&gt;Then there are the C style for loops.&lt;br&gt;for(i=0, i&amp;lt;=10, i++).&lt;br&gt;what is wrong with for i=1 to 10? simple, efficient and readable.&lt;br&gt;&lt;br&gt;Also C# programmers have a tendency to declare their variables anywhere and i have always found that annoying.&lt;br&gt;&lt;br&gt;But in the end what will decide the language i use will be the code samples on the internet. Is it easier to find VB code Samples or C# code samples? Right now VB.NET has more code samples. But C# has more components.&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=13833" width="1" height="1"&gt;</description></item><item><title>re: Eloquence of language</title><link>http://msmvps.com/blogs/bill/archive/2004/06/27/9047.aspx#10792</link><pubDate>Thu, 29 Jul 2004 04:12:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:10792</guid><dc:creator>bill</dc:creator><description>Oh wait ... Do I hear alot of utilities converting from VB.NET to C# ......&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=10792" width="1" height="1"&gt;</description></item><item><title>re: Eloquence of language</title><link>http://msmvps.com/blogs/bill/archive/2004/06/27/9047.aspx#10791</link><pubDate>Thu, 29 Jul 2004 04:10:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:10791</guid><dc:creator>bill</dc:creator><description>Wow another C# bashing..... Anyway ... So Neanderthal languages only qualifies for Standards :P&lt;br&gt;&lt;br&gt;Dum dum.... &lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=10791" width="1" height="1"&gt;</description></item><item><title>C# ... has some pre Neanderthal form of language...</title><link>http://msmvps.com/blogs/bill/archive/2004/06/27/9047.aspx#10775</link><pubDate>Wed, 28 Jul 2004 04:54:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:10775</guid><dc:creator>TrackBack</dc:creator><description>C# ... has some pre Neanderthal form of language...&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=10775" width="1" height="1"&gt;</description></item><item><title>re: Eloquence of language</title><link>http://msmvps.com/blogs/bill/archive/2004/06/27/9047.aspx#10118</link><pubDate>Thu, 15 Jul 2004 02:01:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:10118</guid><dc:creator>bill</dc:creator><description>&amp;gt;&amp;gt; To me, VB is atrocious, because my first language was Pascal and it's kind of irritating to me to use a language that doesn't use semicolon to terminate a statement. &lt;br&gt;&lt;br&gt;Funny, the first language I learned was Pascal (Turbo), and I *can't stand* to use semi-colons on the end of a line!  To me, they are always getting in the way.  I ask myself; why do I always have to put a semi-colon at the end of the line and then not use one in the relatively rare cases where I am continuing a line?  Why not the other way around? (like in VB...?)&lt;br&gt;&lt;br&gt;Actually, VB.NET has a lot of things that drive me mad too (like parens for array subscripts and lots of other nigglets.)  Ideally I'd love to design my *own* language syntax and do it exactly the way *I* want it to be, but that of course doesn't pay the bills and I doubt anyone else would use my language anyway, so chalk that up to &amp;quot;nice idea that will never happen!&amp;quot; :-)&lt;br&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=10118" width="1" height="1"&gt;</description></item><item><title>re: Eloquence of language</title><link>http://msmvps.com/blogs/bill/archive/2004/06/27/9047.aspx#9556</link><pubDate>Mon, 05 Jul 2004 21:18:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:9556</guid><dc:creator>bill</dc:creator><description>A Gunawan,&lt;br&gt;&lt;br&gt;&amp;lt;quote&amp;gt;&lt;br&gt;I can't see the difference between 'No object assigned' and 'Null object assigned'&lt;br&gt;&amp;lt;/quote&amp;gt;&lt;br&gt;&lt;br&gt;There is no such concept as 'Null object assigned' in VB 6 (or VB.NET).&lt;br&gt;&lt;br&gt;As I said Null in VB 6 is based on DB Null. If you have a smallint column in SQL Server, and its value in one row is Null, then VB 6 (via a DB access tech like ADO or DAO) will say the value of the Field is Null. The Field is not Nothing (I mean, there is a Field object there), but it has a VALUE of Null.&lt;br&gt;&lt;br&gt;In other words, in VB 6, an Object / Variant variable can have no object assigned to it - which is Nothing. Or a Variant variable can have the value Null - which (almost always) represents 'no value in the DB.'&lt;br&gt;&lt;br&gt;Of course, the TERMINOLOGY may be confusing if you are used to a language which uses NULL the way VB uses Nothing. But the CONCEPT of Null vs Nothing in VB 6 was quite handy. The usefulness of the concept is illustrated by the existence of Nullable Types ( &lt;a target="_new" href="http://nullabletypes.sourceforge.net/"&gt;http://nullabletypes.sourceforge.net/&lt;/a&gt; ) and their introduction into VS 2005.&lt;br&gt;&lt;br&gt;&amp;lt;quote&amp;gt;&lt;br&gt;I shall apologize to say VB is too descriptive that sometimes it is even hard to fathom why I have IsNull &amp;amp; IsNothing at the same time (VB 6). &lt;br&gt;&amp;lt;/quote&amp;gt;&lt;br&gt;&lt;br&gt;I hope I have helped you in your quest to understand the distinction between the two. Despite the way other languages use the term, IsNull and Is Nothing are completely unrelated in VB 6, and are both very useful.&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=9556" width="1" height="1"&gt;</description></item><item><title>re: Eloquence of language</title><link>http://msmvps.com/blogs/bill/archive/2004/06/27/9047.aspx#9534</link><pubDate>Mon, 05 Jul 2004 01:09:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:9534</guid><dc:creator>bill</dc:creator><description>Gunawan,&lt;br&gt;&lt;br&gt;The difference between Null and Nothing in Vb6 is equivalent to distinguishing between a variable that has never been assigned versus a variable that was assigned the value of null as returned from a database column.&lt;br&gt;&lt;br&gt;How else would the 3 possible states - not assigned, assigned a dbnull value read from database and assigned a valid value (from DB or otherwise) be distinguished?&lt;br&gt;&lt;br&gt;BTW, even variables in C# seem to need this feature as also the CLR which is why a new type &amp;quot;DBNull&amp;quot; has been introduced to distinguish between the 3 states.&lt;br&gt;&lt;br&gt;Vb.Net has renamed isNull to isDBNull to clearly indicate what the function does.&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=9534" width="1" height="1"&gt;</description></item><item><title>re: Eloquence of language</title><link>http://msmvps.com/blogs/bill/archive/2004/06/27/9047.aspx#9417</link><pubDate>Sat, 03 Jul 2004 02:01:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:9417</guid><dc:creator>bill</dc:creator><description>Because I came from a language that only distinguishes null and NOT null. So, I can never understand the reason why we need to distinguish Nothing, Null, and something. I can't see the difference between 'No object assigned' and 'Null object assigned'; unless of course, you can enlighten me with a clever reasoning to why this VB system is better than &amp;quot;null&amp;quot; and &amp;quot;not null&amp;quot; only system. ;)&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=9417" width="1" height="1"&gt;</description></item><item><title>re: Eloquence of language</title><link>http://msmvps.com/blogs/bill/archive/2004/06/27/9047.aspx#9380</link><pubDate>Fri, 02 Jul 2004 17:53:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:9380</guid><dc:creator>bill</dc:creator><description>A Gunawan,&lt;br&gt;&lt;br&gt;&amp;lt;quote&amp;gt;&lt;br&gt;I shall apologize to say VB is too descriptive that sometimes it is even hard to fathom why I have IsNull &amp;amp; IsNothing at the same time (VB 6). &lt;br&gt;&amp;lt;/quote&amp;gt;&lt;br&gt;&lt;br&gt;By IsNothing, I assume you mean Is Nothing...&lt;br&gt;&lt;br&gt;How is that hard to fathom? VB 6 distinguishes between (DB) Null and 'no object assigned'. Its hardly rocket science to understand the distinction.&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=9380" width="1" height="1"&gt;</description></item><item><title>re: Eloquence of language</title><link>http://msmvps.com/blogs/bill/archive/2004/06/27/9047.aspx#9310</link><pubDate>Thu, 01 Jul 2004 19:31:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:9310</guid><dc:creator>bill</dc:creator><description>In my opinion, there are two factors that may influence language choice. First is personal preference. Second is the first language learnt by the programmer. &lt;br&gt;&lt;br&gt;You can draw parallelism between programming language and natural language. If you're speaking one of European languages, you won't find difficulty to speak other European languages, since nearly all of them were derived from Latin. But, try to learn one of East Asian languages, such as Japanese or Chinese. That's a different ball game.&lt;br&gt;&lt;br&gt;So, I guess Bill's argument that students who learnt C-style language is unable to evolve, is too superficial. &lt;br&gt;To me, VB is atrocious, because my first language was Pascal and it's kind of irritating to me to use a language that doesn't use semicolon to terminate a statement. &lt;br&gt;&lt;br&gt;Commenting Anand's statement saying that &amp;quot;the more verbose it is, the easier it is to understand code and maintain it...&amp;quot;; I shall apologize to say VB is too descriptive that sometimes it is even hard to fathom why I have IsNull &amp;amp; IsNothing at the same time (VB 6). &lt;br&gt;&lt;br&gt;Anyway, this is just my biased opinion because I don't speak VB natively. But every now and then, I found myself more productive, less error-prone, and more capable of maintaing codes written in C-style languages; including C, C++, Java, and C#.&lt;br&gt;&lt;br&gt;Maybe if there is an OS written in VB in the future, I will try hard to get my head on VB. But before then, long live C#. ;)&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=9310" width="1" height="1"&gt;</description></item><item><title>re: Eloquence of language</title><link>http://msmvps.com/blogs/bill/archive/2004/06/27/9047.aspx#9292</link><pubDate>Thu, 01 Jul 2004 09:54:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:9292</guid><dc:creator>bill</dc:creator><description>True, blanket statements are always wrong.&lt;br&gt;&lt;br&gt;But in this case, we have a blanket exemption to your blanket statement.&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=9292" width="1" height="1"&gt;</description></item><item><title>re: Eloquence of language</title><link>http://msmvps.com/blogs/bill/archive/2004/06/27/9047.aspx#9267</link><pubDate>Thu, 01 Jul 2004 04:31:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:9267</guid><dc:creator>bill</dc:creator><description>blanket statements are the sucks.&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=9267" width="1" height="1"&gt;</description></item><item><title>re: Eloquence of language</title><link>http://msmvps.com/blogs/bill/archive/2004/06/27/9047.aspx#9225</link><pubDate>Wed, 30 Jun 2004 13:29:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:9225</guid><dc:creator>bill</dc:creator><description>Ever seen an &amp;quot;obfuscated VB&amp;quot; contest?  No, only C based languages.&lt;br&gt;&lt;br&gt;Does any vendor of VB debugging tools run an series of ads, well into the thousands of them, all with different hard to spot bugs (no only c based languages?  Besides, what VB debugging tools?&lt;br&gt;&lt;br&gt;Did Andrew Koenig write &amp;quot;Traps and pitfalls of VB?&amp;quot;  No, he only wrote it for C languages.&lt;br&gt;&lt;br&gt;Basically, smart people prefer VB.  Dummies like saving keystrokes (what they really like is being cryptic, we know).  Or as Anders said, &amp;quot;lifestylers&amp;quot;.&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=9225" width="1" height="1"&gt;</description></item><item><title>re: Eloquence of language</title><link>http://msmvps.com/blogs/bill/archive/2004/06/27/9047.aspx#9217</link><pubDate>Wed, 30 Jun 2004 11:17:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:9217</guid><dc:creator>bill</dc:creator><description>VB.Net 2005 makes use of { }&lt;br&gt;&lt;br&gt;What's more annoying than the break in C#, is how you can't fall through in VB.&lt;br&gt;&lt;br&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=9217" width="1" height="1"&gt;</description></item><item><title>re: Eloquence of language</title><link>http://msmvps.com/blogs/bill/archive/2004/06/27/9047.aspx#9191</link><pubDate>Wed, 30 Jun 2004 02:35:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:9191</guid><dc:creator>bill</dc:creator><description>And about Delphi?&lt;br&gt;&lt;br&gt;Delphi is a good choice. Borland is always focused on developer's needs and on evolution. VB.Net wasn't an evolution, it changed everything. &lt;br&gt;&lt;br&gt;Delphi is a continuous evolving language, with object orientation suport and strong types much before VB, and it's also easy to understand.&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=9191" width="1" height="1"&gt;</description></item><item><title>re: Eloquence of language</title><link>http://msmvps.com/blogs/bill/archive/2004/06/27/9047.aspx#9188</link><pubDate>Wed, 30 Jun 2004 01:08:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:9188</guid><dc:creator>bill</dc:creator><description>Isn't that the point? The more verbose it is, the easier it is to understand code and maintain it...&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=9188" width="1" height="1"&gt;</description></item><item><title>re: Eloquence of language</title><link>http://msmvps.com/blogs/bill/archive/2004/06/27/9047.aspx#9124</link><pubDate>Mon, 28 Jun 2004 23:52:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:9124</guid><dc:creator>bill</dc:creator><description>The one thing I find very annoying with VB.NET is the extreme verbosity compared to C#. &lt;br&gt;&lt;br&gt;Admittedly, the VB IDE appears to be better than the C# IDE in VS.NET but I must argue that if one bases one's choice of language on the IDE alone, it is a biased choice.&lt;br&gt;&lt;br&gt;I for one prefer C# because of its simplicity, clarity, and lack of verbosity as opposed to VB.NET. However, organisations which choose VB.NET IMHO do so because of one overriding requirement: -&lt;br&gt;&lt;br&gt;1. The need for developers with suitable skillsets. C# is good for those with C, C++ and/or Java background. This being so because of the need for maintanence and extending the code over time.&lt;br&gt;&lt;br&gt;That is the case in my organisation as there is a dearth of C# programmers. That is not an indictment against C# per se. I have been coding with C# since beta 2 and now I am coding in VB.NET. The verbosity is mind-numbing in VB.NET&lt;br&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=9124" width="1" height="1"&gt;</description></item><item><title>re: Eloquence of language</title><link>http://msmvps.com/blogs/bill/archive/2004/06/27/9047.aspx#9091</link><pubDate>Mon, 28 Jun 2004 16:51:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:9091</guid><dc:creator>bill</dc:creator><description>&amp;quot;The number one question is of course, why does C# require the break statement in a switch block? Is that some kind of antediluvian tar pit construct ?&amp;quot;&lt;br&gt;&lt;br&gt;It requires it because it is commonly viewed that switch's can be a source of bugs due to programmers forgetting a break statement.  Because one of the tenets of a managed language is to go for the safe route first, it was decided that programmer should have to be explicit with switch statements.  If they want to fall through, they can do so, but now they must use code (as opposed to a comment, or just forgetting altogether) to state that that was their intent.&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=9091" width="1" height="1"&gt;</description></item></channel></rss>