These languages are a bundle of nope.
-
There are languages I refuse to use for fear of picking up bad habits. Perl is one. Python* is another. And then there's BASIC :~ I'd add assembly to the list except there are unfortunately, rare instances where I need it. *Python isn't as bad an offender as the others, but its array handling and use of significant whitespace are deal breakers for me. I don't like to holy roll. Sure I have my favorite languages (C++, C#) and languages I hate but grudgingly accept (like Javascript), and ones that just aren't my cup of tea but I'll use them if I must (Java). Still, I try to be fair, and I believe that most languages have their niche. Even Perl, if I'm being generous, but that doesn't mean I'll use it and it doesn't mean I don't think there should be a better alternative. The ones I listed up top though - Nope. Just no. I will not use them, except perhaps to port something away from them. I have to have some sort of standards. Sometimes I wonder if I'm being overly picky though.
Real programmers use butterflies
-
Who cares What you think? :zzz: If you don't have the mental discipline or fortitude to reject picking up those "bad habits" then shame on you. IMO your post is just an opportunity to brag about ALL of the languages you know and use, and bash languages others use like the "cool kids". Languages are just tools. If you mash your thumb with a hammer, is it the hammer's fault?
Use the language you like. Ignore the "cool kids"
Wow, what crawled up your backside? You're wrong about my intentions, and all you managed to accomplish was to be a jerk to someone that has never done anything to you. And I'll remember it. So congratulations. Smart move.
Real programmers use butterflies
-
VisualBasic.Net said to C#... Anything you can do so can I. I can even do some things you can't. I also give credit where credit is due so there are things you can do that I can't. That's mostly because there is an ongoing attempt to kill Visual Basic so that C# has no competition and keeps a top spot in the preferred programming languages lists. Simply said, Why pay a C# programmer 80K plus for application development when you can get a high school grad to do the same in Visual Basic for 40K. People have been basing VB for years simply because they do not understand the full power and flexibility of the language. Every time I see one of these posts, It brings a tear to my eyes to think people love to bash something they obviously know nothing about.
Pretty sure I understand the language considering I've written parsers for both. Let me help you understand something - they're the same language. The only thing different is some superficial syntax. However, VB.NET's is not clean. C#s is. If anyone is paying a C# dev twice what they're paying a VB.NET give me their number. I have a bridge to sell them.
Real programmers use butterflies
-
C# is like building a car from a kit. Java is like machining you own parts to build a car. C# is a RAD environment best meant for business applications. Java in not a RAD environment, and is for people who like to putz.
I agree with your last two sentences, but not the first two, which seem to imply some fundamental differences in the actual language between Java and C# that aren't really all that different. C# isn't higher level than java. They both operate from about the same place in the programming stack. *hides*
Real programmers use butterflies
-
There are languages I refuse to use for fear of picking up bad habits. Perl is one. Python* is another. And then there's BASIC :~ I'd add assembly to the list except there are unfortunately, rare instances where I need it. *Python isn't as bad an offender as the others, but its array handling and use of significant whitespace are deal breakers for me. I don't like to holy roll. Sure I have my favorite languages (C++, C#) and languages I hate but grudgingly accept (like Javascript), and ones that just aren't my cup of tea but I'll use them if I must (Java). Still, I try to be fair, and I believe that most languages have their niche. Even Perl, if I'm being generous, but that doesn't mean I'll use it and it doesn't mean I don't think there should be a better alternative. The ones I listed up top though - Nope. Just no. I will not use them, except perhaps to port something away from them. I have to have some sort of standards. Sometimes I wonder if I'm being overly picky though.
Real programmers use butterflies
i'd like to master perl5. feels fun like js5. sadly, there is little hope things will change in the time department.
-
There are languages I refuse to use for fear of picking up bad habits. Perl is one. Python* is another. And then there's BASIC :~ I'd add assembly to the list except there are unfortunately, rare instances where I need it. *Python isn't as bad an offender as the others, but its array handling and use of significant whitespace are deal breakers for me. I don't like to holy roll. Sure I have my favorite languages (C++, C#) and languages I hate but grudgingly accept (like Javascript), and ones that just aren't my cup of tea but I'll use them if I must (Java). Still, I try to be fair, and I believe that most languages have their niche. Even Perl, if I'm being generous, but that doesn't mean I'll use it and it doesn't mean I don't think there should be a better alternative. The ones I listed up top though - Nope. Just no. I will not use them, except perhaps to port something away from them. I have to have some sort of standards. Sometimes I wonder if I'm being overly picky though.
Real programmers use butterflies
BASIC has grown over the years and is no longer the beginners language it once was thought to be. Basic started out as an interpreter because it was the only way to produce a multi-tasking system back in the 1970's. While Fortran programmers had to punch cards and wait until the computer dept. had time to run their code, hundreds of Basic programmers were coding and getting immediate results on terminal all around the college. Basic introduces the old computing world to time sharing and it actually was an amazing tool for its time. In the 1980's Basic became a compiler rather than simply an interpreter. Microsoft embraced Basic with its QuickBasic and then PDS 7.1 (Professional Basic). One could code apps in Basic and link into modules written in Assembler, C or other languages. Notice Microsoft called their version of Basic , Professional ! In the 1980's Basic took on many of the best features found in other languages such as Pascal. Modular code design became the norm and the command set grew to embrace many modern constructs. In the 1990's with the advent of Windows, Basic took a big hit at first until Microsoft bought a visual development tool from another company and turned it into Visual Basic. Classic VB was not built from the grown up, so it lost many of the powerful features of its DOS ancestor (PDS 7.1). It was a pcode compiler, not a true compiler. It lost many of its low level features. The one saving grace was the visual drag and drop environment and that is why it became so popular. It was years ahead of other languages when it came to drag and drop, but it did not take long for other languages to catch up. C was a little slow to catch up, but Delphi (Pascal for Windows) caught up and for awhile was a popular language for those who wanted the drag and drop of VB, but the power of C. Microsoft spent years playing catch up trying to bring VB forward and in the end (VB 5/6) they were only able to make it a true machine code compiler by using a C backend. VB itself never was a true compiler (meaning they had to use a different backend to accomplish it, rather than make VB itself a real compiler. Yet, it still was popular because of not only its drag and drop environment, but also because of its support of ActiveX and then later OCX controls. But those custom components usually were written in C, not VB. VB was not a true native code compiler in the sense you could not compile to a real native code DLL usable by other languages (ActiveX DLL's were not the same). This did not mean that Basic tot
-
BASIC has grown over the years and is no longer the beginners language it once was thought to be. Basic started out as an interpreter because it was the only way to produce a multi-tasking system back in the 1970's. While Fortran programmers had to punch cards and wait until the computer dept. had time to run their code, hundreds of Basic programmers were coding and getting immediate results on terminal all around the college. Basic introduces the old computing world to time sharing and it actually was an amazing tool for its time. In the 1980's Basic became a compiler rather than simply an interpreter. Microsoft embraced Basic with its QuickBasic and then PDS 7.1 (Professional Basic). One could code apps in Basic and link into modules written in Assembler, C or other languages. Notice Microsoft called their version of Basic , Professional ! In the 1980's Basic took on many of the best features found in other languages such as Pascal. Modular code design became the norm and the command set grew to embrace many modern constructs. In the 1990's with the advent of Windows, Basic took a big hit at first until Microsoft bought a visual development tool from another company and turned it into Visual Basic. Classic VB was not built from the grown up, so it lost many of the powerful features of its DOS ancestor (PDS 7.1). It was a pcode compiler, not a true compiler. It lost many of its low level features. The one saving grace was the visual drag and drop environment and that is why it became so popular. It was years ahead of other languages when it came to drag and drop, but it did not take long for other languages to catch up. C was a little slow to catch up, but Delphi (Pascal for Windows) caught up and for awhile was a popular language for those who wanted the drag and drop of VB, but the power of C. Microsoft spent years playing catch up trying to bring VB forward and in the end (VB 5/6) they were only able to make it a true machine code compiler by using a C backend. VB itself never was a true compiler (meaning they had to use a different backend to accomplish it, rather than make VB itself a real compiler. Yet, it still was popular because of not only its drag and drop environment, but also because of its support of ActiveX and then later OCX controls. But those custom components usually were written in C, not VB. VB was not a true native code compiler in the sense you could not compile to a real native code DLL usable by other languages (ActiveX DLL's were not the same). This did not mean that Basic tot
VB.NET and C# have the same exact functionality. My criticism isn't about BASIC not being powerful. It's about it reinforcing poor habits due to the way it's structured and due to its syntax.
Real programmers use butterflies
-
I agree with your last two sentences, but not the first two, which seem to imply some fundamental differences in the actual language between Java and C# that aren't really all that different. C# isn't higher level than java. They both operate from about the same place in the programming stack. *hides*
Real programmers use butterflies
If you use WinForms, compare adding a ListBox in C# and creating one in Java. It's ridiculous. Let me clarify - I was mainly referring to IDE RAD based development. Sure, the syntax is similar. It also eats memory like a pig. Once I built the same application in .NET and in JBuilder. When I ran the app. in JBuilder, it told me I had insufficient memory. Really?
-
honey the codewitch wrote:
I don't think VB.NET is much better than BASIC. It might be worse, as it's no longer beginners, but it still encourages crappy coding.
While VB.Net has some serious syntactic shortcomings when it comes to Lambda functions and LinQ, apply the two statements below eliminates all the crappy coding relating to variable and type declarations.
Option Strict On
Option Explicit OnI find the C# "var" variable declaration to be an abomination as it allows the programmer to not understand data types they're using. I also find the use of { and } for code blocking to be a threat to clean coding. In fact, the 2003 power outage that impacted New York, New Jersey, Maryland, Connecticut, Massachusetts, Michigan, Ohio, Pennsylvania, and Ontario was the direct result of an erroneously placed }. This type of code bug is much harder to miss in VB because the language uses keywords to start and end code blocks.
I think there are some legitimate uses for var. I use it in generic methods that have incoming objects and I have to iterate through using reflection.
-
If you use WinForms, compare adding a ListBox in C# and creating one in Java. It's ridiculous. Let me clarify - I was mainly referring to IDE RAD based development. Sure, the syntax is similar. It also eats memory like a pig. Once I built the same application in .NET and in JBuilder. When I ran the app. in JBuilder, it told me I had insufficient memory. Really?
I avoid Java because the tools are awful.
Real programmers use butterflies
-
I avoid Java because the tools are awful.
Real programmers use butterflies
Yes. You get what you pay for. :-O
-
Yes. You get what you pay for. :-O
You know how many times I've said that using open source stuff? :laugh:
Real programmers use butterflies
-
Wow, what crawled up your backside? You're wrong about my intentions, and all you managed to accomplish was to be a jerk to someone that has never done anything to you. And I'll remember it. So congratulations. Smart move.
Real programmers use butterflies
Wow I am a little taken back at your comment to Slow Eddie but that is beside the point of my reply Why am I a member here plain and simple this site has a wealth of Brains who do not waste time on idle chit chat and I always find a honest sharing of ideas Honey the Codewitch is one of those who has an alternate view on various subjects and that is nice One thing I learned here is that you pick the development language based on what language best suits the needs of the project You do not pick up bad habits you develop them and begin to embrace them over time and if you are lucky one day someone like most of the members shares a review of your code and points out the bad habit so that said honey the codewitch I am sure you have enough self control to use BASIC Why did I post this comment VB 6 and NS Basic for the Palm Pilot as well as Apple Basic on a 40 column screen were my foundation to explore and use other high level languages YES Gif pointed out a bad habit I rewrote the project and now that habit is gone
-
Who cares What you think? :zzz: If you don't have the mental discipline or fortitude to reject picking up those "bad habits" then shame on you. IMO your post is just an opportunity to brag about ALL of the languages you know and use, and bash languages others use like the "cool kids". Languages are just tools. If you mash your thumb with a hammer, is it the hammer's fault?
Use the language you like. Ignore the "cool kids"
-
Wow I am a little taken back at your comment to Slow Eddie but that is beside the point of my reply Why am I a member here plain and simple this site has a wealth of Brains who do not waste time on idle chit chat and I always find a honest sharing of ideas Honey the Codewitch is one of those who has an alternate view on various subjects and that is nice One thing I learned here is that you pick the development language based on what language best suits the needs of the project You do not pick up bad habits you develop them and begin to embrace them over time and if you are lucky one day someone like most of the members shares a review of your code and points out the bad habit so that said honey the codewitch I am sure you have enough self control to use BASIC Why did I post this comment VB 6 and NS Basic for the Palm Pilot as well as Apple Basic on a 40 column screen were my foundation to explore and use other high level languages YES Gif pointed out a bad habit I rewrote the project and now that habit is gone
As far as Eddie's comment, I feel like my reply was measured given the tone and nature of it, and the fact that he impugned my motivations for writing my OP. I do try to be nice. But I'm not a pushover. As far as your comment, I generally agree with you, but I've never had to write anything in BASIC or in python commercially. I'm thankful for it. Just like I'm thankful that my need for assembly and javascript in the field is limited. If I had been coding in them all the time, I'd have to work extra hard to keep the stink of them from rubbing off on my coding style, so to speak. That's why I avoid them. It doesn't mean I'll never use them. It's just I won't if I can help it.
Real programmers use butterflies
-
VB.NET and C# have the same exact functionality. My criticism isn't about BASIC not being powerful. It's about it reinforcing poor habits due to the way it's structured and due to its syntax.
Real programmers use butterflies
The idea that Basic promotes bad code design and structure is false and without merit. Why ? Because Basic uses a "different" style of coding than most programmers use today, but not necessarily a poorer one. What do I mean ? Programmers , in what most of you younger programmers would call the old days or even ancient days, use to code in the procedural style of coding. In the early 2000's procedural programming took a big hit by the new up and coming Object Oriented Programming (aka. OOP) style. There was so much talk about how it would solve all our problems and make coding better, faster and more powerful. There were a lot of promises made and most jumped the "procedural" ship in favor of this new fangled style of coding. There were some programmers who were not so sure about this new coding style and while they may have dabbled in it, they still held onto what they knew best, procedural. Their mindset was more of a wait and see if this new fangled coding style would deliver on all the promises made. Classic Visual Basic was a hybrid of sorts and only stepped into minimal OOP, but kept the procedural style of coding for the backend code (once you were in event code most coded using a procedural style at first). In the C world, many procedural programmers jumped ship into C++ and started writing everything as a class rather than a function or procedure. But there were experienced programmers who took it slowly and did not totally give up on procedural design. So what conclusion have many of those old timers (and amazingly a number of newer younger programmers over time) come too having given OOP plenty of time to prove itself ? While there are a few benefits to OOP, such as its tends to "force" programmers to write modular code, in the long run OOP has not delivers on all of its promises. Sadly OOP has brought us a new term "BLOAT". If one is honest and is willing to read many of the articles floating around the web by experienced programmers about the challenges and weaknesses of OOP, you will find that OOP created as many problems as it appeared to solve. There is a slow, but real, movement among not only old time programmers, but also some younger ones, to take a closer look back at the tried and true procedural style of coding to see if it real was as bad as many say and whether it had any benefits now lost by using OOP for everything. The reality is the procedural style coding, whether Basic, C (rather than C++), Fortran, Java or Pascal still exists and it actually has many benefits.
-
The idea that Basic promotes bad code design and structure is false and without merit. Why ? Because Basic uses a "different" style of coding than most programmers use today, but not necessarily a poorer one. What do I mean ? Programmers , in what most of you younger programmers would call the old days or even ancient days, use to code in the procedural style of coding. In the early 2000's procedural programming took a big hit by the new up and coming Object Oriented Programming (aka. OOP) style. There was so much talk about how it would solve all our problems and make coding better, faster and more powerful. There were a lot of promises made and most jumped the "procedural" ship in favor of this new fangled style of coding. There were some programmers who were not so sure about this new coding style and while they may have dabbled in it, they still held onto what they knew best, procedural. Their mindset was more of a wait and see if this new fangled coding style would deliver on all the promises made. Classic Visual Basic was a hybrid of sorts and only stepped into minimal OOP, but kept the procedural style of coding for the backend code (once you were in event code most coded using a procedural style at first). In the C world, many procedural programmers jumped ship into C++ and started writing everything as a class rather than a function or procedure. But there were experienced programmers who took it slowly and did not totally give up on procedural design. So what conclusion have many of those old timers (and amazingly a number of newer younger programmers over time) come too having given OOP plenty of time to prove itself ? While there are a few benefits to OOP, such as its tends to "force" programmers to write modular code, in the long run OOP has not delivers on all of its promises. Sadly OOP has brought us a new term "BLOAT". If one is honest and is willing to read many of the articles floating around the web by experienced programmers about the challenges and weaknesses of OOP, you will find that OOP created as many problems as it appeared to solve. There is a slow, but real, movement among not only old time programmers, but also some younger ones, to take a closer look back at the tried and true procedural style of coding to see if it real was as bad as many say and whether it had any benefits now lost by using OOP for everything. The reality is the procedural style coding, whether Basic, C (rather than C++), Fortran, Java or Pascal still exists and it actually has many benefits.
I disagree with most of your comment - or rather the parts were pertinent to BASIC's form and coding style (not the bit about projects failing which is a sidebar at best). I've had to embed too many arrays into a single line of basic code to ever be okay with their syntax.
The only other language it could have been written in would have been pure C (not C++).
I challenge you to produce C code that generates different assembly instructions than I can produce in C++ code. You can literally write the same code in C++ that you can in C. You just do it differently.
Real programmers use butterflies
-
There are languages I refuse to use for fear of picking up bad habits. Perl is one. Python* is another. And then there's BASIC :~ I'd add assembly to the list except there are unfortunately, rare instances where I need it. *Python isn't as bad an offender as the others, but its array handling and use of significant whitespace are deal breakers for me. I don't like to holy roll. Sure I have my favorite languages (C++, C#) and languages I hate but grudgingly accept (like Javascript), and ones that just aren't my cup of tea but I'll use them if I must (Java). Still, I try to be fair, and I believe that most languages have their niche. Even Perl, if I'm being generous, but that doesn't mean I'll use it and it doesn't mean I don't think there should be a better alternative. The ones I listed up top though - Nope. Just no. I will not use them, except perhaps to port something away from them. I have to have some sort of standards. Sometimes I wonder if I'm being overly picky though.
Real programmers use butterflies
Perl and Python I have no use for, nor do I want to learn them. I've looked at them enough to know I don't like them. I've developed in Java and made a few products with it at a previous job, and I never want to touch it again if I can help it. I grew up on BASIC with the commodore64, Apple II, and old IBM clones. It was a fun language to get started in, and sparked my interest in how computers actually worked, so I dived in deeper for harder languages. the old BASIC is nothing like modern derivatives, beyond the name and some of the keywords. I don't mind JavaScript, it's interesting, (fun and frustrating at times) and definitely has it's place. The same with C, it has it's place also. If anyone tries making a JS enabled microcontroller, they need their ass kicked, or a C script runtime for web development. I've picked up assembly just for the knowledge of it, since there are times in the embedded world that dropping down into assembly is helpful. I picked up ADA at my last job, it was used to program some scientific equipment oddly enough. I've played around with COBAL a bit and I don't hate it. I love D-lang but I'm afraid it won't ever hit main stream. Rust is awesome, but it's a 180° from JavaScript that I have to use daily, so it takes a minute to get back in the flow. To each their own
-
Perl and Python I have no use for, nor do I want to learn them. I've looked at them enough to know I don't like them. I've developed in Java and made a few products with it at a previous job, and I never want to touch it again if I can help it. I grew up on BASIC with the commodore64, Apple II, and old IBM clones. It was a fun language to get started in, and sparked my interest in how computers actually worked, so I dived in deeper for harder languages. the old BASIC is nothing like modern derivatives, beyond the name and some of the keywords. I don't mind JavaScript, it's interesting, (fun and frustrating at times) and definitely has it's place. The same with C, it has it's place also. If anyone tries making a JS enabled microcontroller, they need their ass kicked, or a C script runtime for web development. I've picked up assembly just for the knowledge of it, since there are times in the embedded world that dropping down into assembly is helpful. I picked up ADA at my last job, it was used to program some scientific equipment oddly enough. I've played around with COBAL a bit and I don't hate it. I love D-lang but I'm afraid it won't ever hit main stream. Rust is awesome, but it's a 180° from JavaScript that I have to use daily, so it takes a minute to get back in the flow. To each their own
Matt McGuire wrote:
To each their own
Definitely. I have my opinions, but while I might sideeye a Perl developer the same way I wonder about what makes people pursue podiatry as a profession I won't judge them for it. *Somebody* has to code in the damn thing, after all. As far as basic, I came up the same way you did it sounds like. Good old Applesoft BASIC in my case. I'm glad that was "the bad old days" and not today. Still, line delimited languages give me a rash. And VB.NET's syntax with respect to things like lambdas leave me googling all the time because the syntax is nonsense, and clearly a bag on the side - it wasn't designed with them in mind but rather added to the grammar after the fact and it shows. There are sadly, folks who think running a scripting language (JS, Python), or a GC language (C#) on a 360kB system at 160MHz is a good idea. I am not one of those people. For starters, I don't care about RAD on an IoT device. I care about battery life.
Real programmers use butterflies
-
I disagree with most of your comment - or rather the parts were pertinent to BASIC's form and coding style (not the bit about projects failing which is a sidebar at best). I've had to embed too many arrays into a single line of basic code to ever be okay with their syntax.
The only other language it could have been written in would have been pure C (not C++).
I challenge you to produce C code that generates different assembly instructions than I can produce in C++ code. You can literally write the same code in C++ that you can in C. You just do it differently.
Real programmers use butterflies
You young programmer just can't grasp the real differences between procedural code and OOP. Try to understand, that us old dinosaurs (programmers in their 60's) use to write apps which would run on 1 megabyte RAM (not Gigabyte), run on a hard-drive which was only 20 megabytes in size or worse in a 1.44 megabyte floppy disk. I wrote my first compiler for the Commodore 64 (using a Basic compiler) which only has 64 Kilobytes of Ram. I wrote a complete POS software package for a video rental store which ran on a Kaypro computer with 2 floppy disks (no harddrive) and 640 KB ram. You learn something from writing code for computers with so little hardware capability. Todays programmers gasp if they had to use a PC with less than a core i7 and 32 Gb ram. I am shocked at how slow and bloated Visual Studio is today. No wonder why programmers need the best PC possible. My core development tools (Powerbasic and my GUI framework with its own Visual Designer) allows me to quickly write apps on almost PC I have around the house. Give me an old Windows 98 computer with 64 meg Ram (not GB) and I likely still could code on it with acceptable speed of development. There are "real" C programmers today, that their entire development system would likely run on a PC which Visual Studio developers could even get their development tools to install on, none the less actual run. I was actually one of those college students who when given a choice to punch out Fortran cards or code in a Basic interpreter on a green screened Terminal, was amazed at how quickly I could write code in that Terminal using simple old Basic. I don't use an interpreter anymore. I use a native code compiler for Windows, which allows me to compile at lightning speeds even tens of thousands of lines of code. I barely have time to take on sip of soda (not a coffee drinker) during the compile cycle for 50,000 lines of code, none the the less take a coffee break. Install the latest Visual Studio (if even possible) onto a PC with only 4 GB ram and less than a core i3 CPU) and with no SSD and see how long it takes you to to even run VS, none the less compile app of significant size. OOP adds overhead to an app and also makes following code flow more challenging. Read an interesting blog post by an engineer at Intel on Intel's website about the significant problems object oriented coding brings when trying to debug code.