|
Hi Jon!
Thank you for your feedback and your knowledge. You have hit the nail on the head by saying, "As for my specific set of tools, that's ever-changing. Every language, framework, or extension has its advantages and drawbacks.". I am wanting as many members as possible to share their thoughts and you have just said exactly the phrase that I was expecting, but not as quick as I anticipated. Anyway, what have you learned today, if anything, that will be in all of your coding? (Not asking for secrets lol)
Thanks Jon!
-Randy
|
|
|
|
|
As an OCD sufferer, everything for me has to be black or white/yes or no, so I prefer to write out my programs in full in binary in a text editor.
The only "extra" functionality I need in the text editor is the ability to sort, because when I'm finished writing a program, I insist on sorting all those messy ones and zeros numerically -- and I get annoyed if this doesn't result in the same number of pages of zeros as are used for the ones, so I make up the difference by adding instances of the character that came up short.
The programs work perfectly well, so I don't see any need to invest in any new-fangled UIs, frameworks, etc.
I wanna be a eunuchs developer! Pass me a bread knife!
|
|
|
|
|
That explains a lot!
Software rusts. Simon Stephenson, ca 1994. So does this signature. me, 2012
|
|
|
|
|
I always knew there was something special about you, something that tugged on my heartstrings, and made me want to give you drugs !
cheers, Bill
«When I consider my brief span of life, swallowed up in an eternity before and after, the little space I fill, and even can see, engulfed in the infinite immensity of spaces of which I am ignorant, and which know me not, I am frightened, and am astonished at being here rather than there; for there is no reason why here rather than there, now rather than then.» Blaise Pascal
|
|
|
|
|
This drug[^] has been proven effective, so go for it!
I wanna be a eunuchs developer! Pass me a bread knife!
|
|
|
|
|
|
Damn you!
I wanna be a eunuchs developer! Pass me a bread knife!
|
|
|
|
|
Quote: ones and zeros Why both? The Romans built an empire that lasted for centuries, using a numerical system that did not have a zero. You should try to get away without a zero as well. Use only ones!
Get me coffee and no one gets hurt!
|
|
|
|
|
That's just silly! The programs wouldn't work!
I wanna be a eunuchs developer! Pass me a bread knife!
|
|
|
|
|
I believe you
|
|
|
|
|
I'll be.... a text editor?
I always thought that real programmers used "copy con"
"Abstract art? A product of the untalented, sold by the unprincipled to the utterly bewildered."
Al Capp
|
|
|
|
|
EDLIN and SORT are all the development environment I need.
And a coffee machine, of course. No environment is complete without a coffee machine.
I wanna be a eunuchs developer! Pass me a bread knife!
|
|
|
|
|
I've been in the industry for over 30 years now and have a variety of tool as needed. I started with FORTran and FMS on a VAX/VMS platform and from there, migrated to some Windows development.
However, most of my Windows development, then and now, has been back end processing: services, data extract/manipulation processing, etc. So, I started using the tools made available and in common use in the areas I was in. That tended to be VB6, then VB.NET.
I know, flameproof suit on, but, if it works for what I need...
So.. to that extent, use what you are comfortable with that will do the job.
|
|
|
|
|
Visual Basic was one of the best things that happened to IT. The language was (and still is) easy to learn, easy to read, implemented drag-n-drop GUI building well, and simplified event-driven programming. Back in the 90's it was a game changer, a radical departure from every technology then on the market.
I was a C programmer (among other things) and moved into C++ and Java ... got out quickly. OTOH, VB made business programming quick and efficient -- and VB built a market share that I don't believe any other language has equaled.
Is there crap VB code out in the wild? Yup. There's also crap C++, Java, C#, etc. The problem is rarely the language, it's the person who doesn't know how to program with maintainability as part of the design process. I roll my eyes when I read rants against VB ... the language has been unsupported for over 15 years yet a recent survey listed it as a the 11th most popular language according to one site. [I recall other sites rank VB between 11 and 18.] Take all language rankings with a 5# bag of salt, as they all focus on specific criteria.
Top 100 Most Popular Programming Languages Of 2016[^]
Dropping support for VB6 was possibly the most bone-headed move Microsoft made, one that stands out in a sea of bone-headed moves. It cost them a lot of faithful users of their products.
Do I recommend learning VB6 now? Only for programming VBA. Knowing VB/VBA is useful in useful in writing Excel functions which beat the crap out of chaining worksheet functions together. My MS Word Normal.dotm contains macros I wrote in the 90's, still useful today. [Visual Basic is alive and well behind the scenes in Microsoft Office, as well as other products.]
These days I'm doing C# winforms and MVC with Oracle and SQL Server. Why? That is what the employer needs. I learn the languages that have market share, which ensures I have a steady paycheck. I like my job and love programming, but the languages and technologies are simply a means to an end. In themselves they rank low in importance.
|
|
|
|
|
VB.net is the latest version. Ok it doesn't resemble VB6 very much but it can do almost everything that C# can.
My only gripe with VB6 is that it didn't encourage properly structured or DRY programming.
I have recently been working with some folk who learned their coding skills with VB6. They created some gargantuan functions with literally hundreds of lines of code. It took a great deal of pursasion to get them to start making functions that do only one thing and never repeat themselves.
We're philosophical about power outages here. A.C. come, A.C. go.
|
|
|
|
|
I dabbled briefly in VB.NET then switched to C#. Due to the lack of backwards compatibility and apparent indifference from Microsoft, VB.NET lost the traction provided by the VB6 crowd and C# seemed to be the better route. Hindsight has proven that correct (IMO). I have no problems with VB.NET; however, in my area it doesn't have market share so I went in a different direction.
A don't know that any mainstream language truly "encourages" good structured programming. While I agree that some VB folks didn't understand that writing an entire 10,000 line program in one function is a bad idea ... I've run into equally bizarre things in the OO world. Twenty years ago I recall one of the OO evangelists writing about how OO fixed all the problems of procedural programming ... while I was trying to debug OO code whose original author seemed to have a truly nonsensical take on what OO is.
Good programming skills need to be instilled early in the learning process; then they become second nature.
|
|
|
|
|
C#
That's all the answer you need - now go create...
|
|
|
|
|
C++ is my language of choice, simply because it's the only language that can get me true satisfaction.
Besides, I like Qt more than anything .net has to offer.
|
|
|
|
|
|
Hi!
My choice would be Embarcadero Delphi.
I know it costs a lot more than C#, so if price is an issue go with that.
My preferred combo would be:
* Delphi
* DevExpress
* VCL Skins
For the client and
* RemObjects
For the server.
If you only need simple DB access, then ditch RemObjects.
My reasons for this choice are:
- Polish: DevExpress gives your app an incredibly clean look. As an alternative, VCL skins allow you to skin your apps natively in a number of ways
- Cross Platform: most code can be shared between Windows and Mac. Mac requires the use of FireMonkey for the GUI, but if you are smart that is not very painful
- App tethering: your apps can communicate very simply across a network or using BlueTooth
- Android/iOS package: the Pro version allows you to buy an optional pack to do mobile apps. App tethering works with this as well, so you could use your phone and update your app automatically
- No runtimes: you deploy a single exe that works across the board, even if .NET isn't installed
- Wealth of high quality 3rd party components
- Modern language: generics, anonymous functions, etc. Yeah, it's still catching up a bit, but it all works.
- DB engines that you can embed: a number of companies make RDBMS systems that you can embed in your program. An example of this would be NexusDB, whose DCU only version is completely free. Keep in mind that NexusDB is also capable of having a whole DB in memory and - if you buy the C/S version - you can even have it <b>in memory on a remote server</b>.
The flexibility, raw power and freedom is just a sight to behold.
A free starter version exists but I don't think it lets you do databases. Worth playing with though.
|
|
|
|
|
I use RPG because it's a natural Business language with integrated record level database access. The variation I use is a Visual Studio Plug in language from ASNA.
|
|
|
|
|
A computer programmer exemplifies Human thought, translating in effect each brain-step to a computer command. It is therefore ABSOLUTELY necessary that the programming languaged used is as close to Human thought as possible. This is exactly where Visual Basic scores High. But I do appreciate the need for other languages.
Let us accept the fact that our whole logic is built around our natural language, that is the HUMAN language. Therefore, the programming language that is closer to the HUMAN language is more suitable for expressing algorithms while at the same time it reduces logical errors in programming. In other words, "IF... THEN... ELSE..." is far more clear and closer to the HUMAN language than if... {... }...
Professor E. J. Yannakoudakis (eyan@aueb.gr)
|
|
|
|
|
DrBones69 wrote: why you have chosen a specific set of tools used for creating the majority of the projects created and what led you to the path you're on
While I answered this obliquely in a reply to a post in this thread, I haven't answered directly.
My choice of languages and technologies is driven primarily by market share. Companies typically hire for specific technologies so to maintain a consistent paycheck I learn whatever is in demand. In the past 30 years I've seen numerous technologies rise to stardom and fade into obscurity, so I focus on what I project will have market share in the foreseeable future -- with the understanding that I'll learn new things as the current ones fade.
The simple fact is that as much as I enjoy programming, my focus is having a paycheck. My experience is that having a paycheck beats the heck out of NOT having a paycheck.
But market share is not the only consideration -- what *I* want to do is important. We spend too much time at work to do something we absolutely hate for long (although I've done that when the economy was less than stellar).
Most surveys I've read recently put C# at 6th or 7th in popularity. It seems to hold consistently in that place year after year, and C# has good market share in my area (lot of Microsoft-based shops). I like C# and database, so that's my choice.
My advice to everyone is to watch the job boards, even when you have no interest in jumping ship. Stay abreast of where the paying jobs are, and take the trade rag articles on upcoming languages with a grain of salt. Until someone is willing to pay for a skill set, it is of limited value.
|
|
|
|
|
Thanks Bryan!
It seems that C# has the majority vote so far. But I still find myself feeling the strong pull from C++ and Cobol calling to me. I'm always willing to learn any language, technology, helper tools etc... While in the process of learning, I sometimes yell out loud, "SQUIRREL!" lol. (Might have something to do with ADD or ADHD, even though I've never been diagnosed). Thanks again for your wise input. Sounds like C# is waiting for me, so wish me luck but it shouldn't be a big challenge.
-Randy
|
|
|
|
|
Glad to be of service! You don't need luck, just perseverance.
Your response made me think of something else, the learning process. As IT people we will continue to learn the remainder of our careers, or we will stagnate.
Learn COBOL and C++ if they interest you. The value of learning COBOL for a any programmer is that it teaches us to think differently. So does VB and C and any other procedural language. Dabble in F# or Lisp or any functional language for the same reason. Learn Oracle, SQL Server, and/or My SQL -- yet another paradigm. [NoSQL and MongoDB are on my list of things to learn.]
[IMO we should learn C early in our training, it provides a background for learning many other languages including C++, C#, and Java. I haven't used C professionally in more than 25 years, but the lessons learned influence everything I do, and I still have my dog-eared copy of K&R.]
The more ways we learn to think, the faster we learn new things, the easier it is to keep up with technology changes.
In my first job I was tasked to teach SQL to a woman who had been writing COBOL for 30+ years. She was amazing with COBOL -- if it could be done with COBOL, she could do it. If it couldn't be done with COBOL, I'd give even odds that she'd do it anyway. But she couldn't grasp SQL. IMO she spent too many years thinking only one way, and couldn't make the paradigm shift. [COBOL and her age didn't factor in, IMO, it was the difficulty of thinking in a totally different way.]
That was a warning to me to keep current and keep flexible.
I mentioned I'm currently doing C#/MVC. To do this I'm using C#, JavaScript, HTML, XML, Razor, SQL Server (including DB design and T SQL), Oracle (we are migrating databases), Microsoft's version of MVC including Entity Framework, and probably more that I can't think of at this moment. Flexibility is a requirement for this job.
|
|
|
|
|