And right there look at how you can easily glue together systems built in .Net, Java and COM using Python. That is what it's best at so no one should be worrying about Python displacing VB6. It's complementary to it if anything.
Printable View
And right there look at how you can easily glue together systems built in .Net, Java and COM using Python. That is what it's best at so no one should be worrying about Python displacing VB6. It's complementary to it if anything.
D.Add("abc", 123
), what is the principle of this? Why can he create this at will. Late-bound methods, but I also feel very similar to VB6 objects, perhaps 25 years ago, Microsoft can also use VB6 to call Java methods directly.
Hmmm. Python is more of a "high-level" language, basically a "macro" language sort of pretending to be a full-fledged language.
I think it's popularity is due to the fact that it's entirely free, easy to get going, and relatively OS agnostic. As such, it's relatively easy to get a non-programming person up and running with simple stuff. Install VSCode, Python, & Pylance ... fire it up, and say "print('Hello World')" and you get immediate results. In many ways, I think those are the same reasons that VB6 was so popular (and it even includes a wonderful GUI designer, which Python doesn't).
It seems that language developers can't seem to realize that many programmers (of all levels) just want a tool that's quick and easy to grab to get something done, and Python does fit that bill quite well, whereas (regardless of the arguments others will make), .NET does not provide us anything remotely resembling a quick and easy tool.
I was under the impression that .NET also includes a visual GUI designer similar to VB6. I wonder why doesn't Python include one since it's so popular... Also Python can't even compile to native code, it bundles up an interpreter in each EXE, I mean LoL...
I think it's wrong to characterize Python like this. Python is a feature-rich language, just as much as any modern high level language. It has everything you can find in any other high level language. First class function, classes, lambda expressions, iterators, decorators and much more. Python is an extremely deep language with a feature-set that will astonish most people.
However, I fully understand what motivated you to characterize Python as not being a full-fledged language. Unlike languages like VB6, C#, Java, C, Rust etc, Python absolutely cannot be used as the sole language to write monolithic mid-sized to large production level applications and in this sense I agree that it's not a full-fledged language. For example you will never see something like a BitTorrent client, a 3D shooter or GIMP clone written almost completely in Python. It's just far too slow. Large portions of such applications will unquestionable have to be written in other languages.
In fact, a lot of the common libraries used in Python are actually written in C. For example NumPy is built on top of a foundation written in C:-
https://github.com/numpy/numpy/tree/...umpy/_core/src
There is some truth to this. Python is a very easy language to right jump into but I also think Python's explosion in popularity was due mainly to the fact that it could just run anywhere at any time while boasting one of the largest collection of 3rd party libraries ever created for a programming language. So run anywhere + easy of use + big library = massive success.
I like to think of Python as a super advanced version of something like Bash, PowerShell or even VBScript. Personally I think Python can compliment dev platforms like VB6 and .Net rather than compete with them.
Yes it does. In fact we have two for classic Windows development, WinForms and WPF.
Python's biggest strength is its platform agnosticism and to this day the only UI technology to achieve this is HTML. Python + HTML is an extremely popular pairing so there really is no need for a standard UI framework in Python.
Now of course third parties have created their own UI libraries like Tkinter and if you intend to restrict yourself to a specific platform, these might not be a bad idea. In my opinion though, people really shouldn't be writing UI code in Python. It's very painful to write and inelegant to read.
This is still the best way to achieve near complete platform agnosticism which is Python's biggest selling point.
I assume by UI you mean GUI, because a language is fairly worthless with no UI at all. But, even if you mean GUI, I'm not sure why you say this. It just seems to me that any language, especially the world's most popular, in 2024, should have the ability to create nice GUIs.
I certainly agree with that one, and I'm learning it the hard way. For a VB6-FRM to Python project, I've just abandoned tkinter, moving to PyQt, thinking it'll be much better.
But IDK, I still think there's room for a mid-level, RAD, easy-to-use-and-test, language with good GUI features, in the marketplace. I suppose, ideally, it'd also need to be OS agnostic (which would require some compromise).
I tried using some python apps that had a GUI, they were painfully slow. I would agree python is best for command line or embedding
What are the features that I see that any language needs to consider:
- OS agnostic (or not)
- Snappy IDE
- Easy to get up and running
- Easy to test code
- Intellisense-like IDE features
- Compilable to machine code (or tight pseudo-code)
- Free (shareware) (both language & IDE)
- Nice GUI development system
- Easy to develop extension libraries
- Easy to install libraries
I know it's probably "near" impossible to put all of those together, but I do think it's possible to get close. Probably the most difficult two to combine are "compile to binary" and "OS agnostic" (given that OS agnostic strongly implies CPU agnostic as well).
Just thinking about it, it seems like some cross between Python and Java would come pretty close. I haven't tested, but I'd imagine that Java's p-code is substantially faster than anything Python comes up with.
----------------------
And I still say that, if Microsoft had kept developing VB6, they could have precisely this market niche.
In fact, python cannot be compiled into an exe, which does not affect its use. But it can be compiled just like bytecode. The code can be hidden and encrypted.
It can also be directly generated into exe with third-party tools.
It took Microsoft 25 years to finally defeat Java. It's just that, uh, programming languages are just more popular than Java.
But what he didn't expect was. java+jsThis is the scariest programming language. Plus scripting language.
It turns out that JS and VBS are competing with each other.
Eventually JavaScript will become the second most popular programming language after python.
Microsoft has been completely defeated in the field of programming.
At VBS,The score was only two points.. javascript had a score of 95 at the time.
VB. Net, VB6, Microsoft thinks they shouldn't develop it as a programming language.
There was a chance to develop it as a scripting language.Great language, and with a lot of developers, Microsoft chose to commit suicide.
The VBS does not have a simple scripting tool. The PowerShell replaces the VBS, but it's like a Nokia phone with a keyboard. A completely backward and outdated thing.
Is it a cross-platform thing? Even if it is, I think he is rubbish.
In fact, the use of VBnet to write code to run dynamic compilation, as a programming script language is also very good.
A terrible thing happened. He didn't have a code editor, he didn't have a easy form designer.
If Microsoft chooses to develop this tool as a (cross-platform) scripting language 10 years ahead of schedule, its direct competitor is py. There may be a chance of survival.
You can share package components from nuget,, and.net.
If we can acquire vbsedit. Exe 20 years in advance and run across platforms.
Microsoft has never invested normally in these small tools.Not giving them respect, and the windows system needs these features.
Just like the file search function of the system, it has been very rubbish for 30 years and has never been significantly improved. If acquiring everything. Exe, this free file search tool.
Even Microsoft's notepad tool has been very difficult to use. If it is directly replaced by a third-party notepad 3, or it is acquired.
It can make the operating system easier to use.
But there is little third-party software in Microsoft's operating system. Android and Apple, on the other hand, rely on third-party software to generate hundreds of billions of dollars in revenue.
Maybe Microsoft will choose to kill ie like it did. Webview2 with Google Browser kernel。
Even finally, the operating system is directly built in. With python as the default scripting language. Ban bat from the command line, ban VBS from running, and publicly admit that you have failed completely. Anyway, there are free third-party software to use.
The development efficiency is higher. Data studies have shown that Python is twice as efficient as Java, which means that there are fewer lines of code in Python. Lines of code may sound like a terrible indicator. Each language takes about the same amount of time per line of code. Therefore, limiting the number of lines of code can improve production efficiency. For example, Python can sketch an image in just 21 lines of code. Python has been on fire in the industry in the past two years.In addition to cloud computing to help Python bring a wave of rhythm, there is also a major reason is that the enthusiasm for Internet entrepreneurship has risen in recent years. Tens of millions of programmers have listened to all kinds of entrepreneurial chicken soup and quit their jobs in big companies to start their own businesses. Everyone is anxious to develop things quickly to get financing. At that time, investors'brains were also hot. A large number of money was invested in start-up companies. For all kinds of cash subsidies to grab users. Time is money, we wish we had an idea today, the product will be online tomorrow, the product will be online in the evening for a month, maybe the war has nothing to do with you.
In fact, Vb6 is the most efficient programming language for development.
But what Microsoft is pursuing is how to sell more vs development tools.If development continues, VB. Net. There is no guarantee of a 10% increase in sales.
Since you can't make money, you might as well cut off one hand directly.
Python Old Ape Concern Why is Python so hot now?
Python Old Ape The code age is 1 year Concern Why is Python so hot now? First, it's no accident that python has been rising up the list of programming languages over the years.After decades of development, python has been neglected for a long time, but now it is very mature. For example, the new language go does not have many packages needed, and there are many packages on python. It is impossible for users to write packages slowly and call packages directly, which is much faster and has immediate effect. Second, python can work in many areas. At first, it was only used on Linux instead. Later, it was found that python can do data analysis.Later, someone developed a development kit, pyqt desktop development kit, database driver, and then developed artificial intelligence, deep learning, GPU acceleration, so python can be applied in a wide range, especially on the server, unlike the client, which needs to be installed, many Linux have built-in python. In this way, python can play a big role on the server, and when the performance is not enough, acceleration measures such as graphics cards can be used. Three, python is open source, like Java, C # is mainly used for commercial software development, we can not see other people develop.
Fourth, python is particularly convenient in the field of artificial intelligence. Many open source artificial intelligence frameworks give priority to python. The learning cost of artificial intelligence is very high, and python can just simplify programming.
In November 2015, Microsoft began to release.net core cross-platform. It's been exactly nine years now.
It has been 26 years since the birth of VB6. If Microsoft started cross-platform 26 years ago. But he needs to have a real scripting language and an idE tool for script development. That might beat python.Because python scripts are very similar to VBS syntax.
I'm actually thinking in terms on n-tier application development which seems to be a very popular way to write applications now, especially multi-platform applications. I think Python is the worst possible choice for a front end language. There are just so many far better choices for writing UIs. If you're targeting the web, there are so many HTML based frameworks that are great at this. If you're on Windows, VB6, WinForms and WPF are great choices. You can even take Odoo's approach(I talk about Odoo later) and create your own UI framework.
Python in my opinion is best suited running the things behind the scenes.
Yea, I saw your thread on that. I think success will depend on how closely Windows UI paradigms can be matched to PyQt paradigms. For example, is there a direct PyQt equivalent to a VB6 multi-line TextBox at position (10,30)px with a size of (300,500)px with a forecolor of RBG(255,120,50) and a font value of Times New Roman of size 16.
Would you be surprised if I told you this already exists? There is a development platform called Odoo that uses Python as it's main language and this platform can be used to write fully featured web applications in Python that can run anywhere. The GUIs themselves are written in some XML language they invented specifically for building web UIs but it's very tightly coupled with Python within the Odoo environment.
Odoo applications are fairly basic in design. It doesn't take that much code to create a basic Odoo application. You build your UIs in their XML language which the platform will translate into classes and objects that you can then manipulate using Python code. If you follow their deployment protocols properly, you can then run your application in a web browser through their platform.
I'm willing to bet Odoo is not the only Python-based development platform like this. I just happen to be familiar with it because this is the direction my father wants to take the company, a decision I'm not too fond of but that's another story.
For right now, AI is making Python even more popular. GPT-4 specifically can damn near work miracles thanks to it's ability to execute tasks by writing Python code.
For example, I once sat for hours just telling GPT-4 to graph different functions for me. Here's an example:-
https://www.vbforums.com/images/ieimages/2024/02/5.png
And here is the code used to generate that graph:-
https://www.vbforums.com/images/ieimages/2024/02/6.png
I cannot think of any other language besides Python that can be used this way. No language, not C/C++, .Net, VB6, Java would have been better suited than Python as a way of dynamically generating AI output.
I mean just try to imagine for a moment if C was used here instead of Python. Do you think it would have been so easy to produce that graph using C? As a matter of fact, lets ask GPT-4 itself and see what it says:-
https://www.vbforums.com/images/ieimages/2024/02/7.png
As you can see, there are a number of hurdles to overcome which just doesn't exist when Python is used. This is why "Python is so hot now"
Maybe if we need to develop some scripts using PowerShell. Ask GPT, can he give us an answer? Maybe it's hard for us to understand. For python, the results of its source code search may be more accurate and easier to understand.
As a follow up to my last post, I decided to ask GPT-4 directly why Python was chosen over other languages:-
This is the answer it gave, which I asked it to translate to BB code to post here:-Quote:
Why was Python chosen as the language for your code interpreter? Why not C, VB6, C#, Javascript or Java? Give reason why each of these languages were not suitable in comparison to Python.
Python
Ease of Learning and Use
Python's syntax is clear and intuitive, making it an excellent choice for educational purposes and for users who may not have a deep background in programming. Its readability and simplicity allow for quick understanding and modification of code.
Versatile Standard Library and Third-Party Modules
Python comes with a vast standard library and has a large ecosystem of third-party modules, making it highly versatile and capable of handling a wide range of tasks, from web development to data analysis and machine learning.
Interpreted Language
Being an interpreted language, Python allows for interactive experimentation and debugging, which is ideal for a conversational interface where immediate feedback and iterative exploration are valuable.
Cross-Platform Compatibility
Python's cross-platform nature makes it suitable for a service that needs to run on various operating systems without modification.
Why Not Others?
C
While C is powerful for systems programming and embedded systems, its complexity, manual memory management, and lower level of abstraction make it less suited for a conversational AI platform. The risk of security issues like buffer overflows and the need for compilation make it less user-friendly for this context.
VB6
Visual Basic 6 (VB6) is considered outdated and not supported on modern platforms. Its limited support for object-oriented programming and its focus on Windows-based applications reduce its suitability for a cross-platform, web-based service.
C#
C# is a robust and versatile language, primarily used in the .NET ecosystem. However, its stronger association with Windows platforms and the .NET framework can limit its cross-platform capabilities compared to Python. Though .NET Core has improved its cross-platform support, Python still holds the edge in terms of versatility and ease of use.
JavaScript
JavaScript is the language of the web and is unmatched for client-side scripting. However, for server-side applications or data analysis tasks, Python offers a more comprehensive set of libraries and tools (e.g., NumPy, pandas, SciPy for data science). JavaScript's asynchronous nature and event-driven model can also add complexity for certain types of computational tasks.
Java
Java is a powerful, object-oriented language with wide usage in enterprise environments. However, its syntax and boilerplate code can be more verbose compared to Python, making Python more accessible for beginners and for rapid development tasks. Furthermore, Python's dynamic nature allows for more flexible and interactive coding, which suits the needs of a conversational AI platform.
In summary, Python's combination of ease of use, extensive libraries, and its suitability for a wide range of programming tasks makes it an ideal choice for an integrated code interpreter in a conversational AI environment. Its advantages in readability, cross-platform support, and community support outshine the specific benefits that other languages might offer in their niche domains.
That works until you are working on, or trying to use, more than one python application that use different versions of Python - suddenly just being able to run isn't the case. Pip fails to install dependencies for one, if I have python 3.11 first in my path as this app is only designed for Python 3.10. However I have a second application I want to use that fails if python 3.10 is first in my path. I now end up having neither of them in my path, and wrap the two applications in their own batch file that sets the correct python version on the path first. Not the end of the world, but certainly not always straight forward.
Edit: I wouldn't have disagreed about this until this morning when I had exactly this issue and I am bitter about it right now!
Just as an aside though, with C# it is possible to use it like a scripting language, and not require the full Visual Studio install. Can make it easier to throw quick scripts together if you are a C# person rather than a powershell / batch / vbs etc. person.
If you install the free dotnet sdk https://dotnet.microsoft.com/en-us/download
Then install the script tool
Then create a file (hello.csx) with some C# e.g.Code:dotnet tool install -g dotnet-script
You should then be able to typeCode:Console.WriteLine("Enter your name");
var name = Console.ReadLine();
Console.WriteLine($"Hello {name}");
You can also import other libraries, do more complex things.Code:dotnet script hello.csx
If you like vscode you can even set it up by doing
And it will create a simple script folder with a main.csx, and configure VS code as a debugger for you.Code:dotnet script init
code .
The simple answer is, It Didn't.Quote:
Why did Microsoft abandon ,killed VB6?
20+ years after MS moved on to .Net, VB6 apps can still run on Windows OS.
The first home computers in the early eighties were all about home programming.
There were many games also for children but it was all about home programming and they all used basic in one form or another - simple language, resembles plain English.
MS jumped into the game sometime in 1985 with microsoft basic, the grand father of vb6.
At the same time the Russians, still under communism, were frowning over all this. Computers outside our glorious Soviet intitutes ? People doing what they like ? You do know of course that if you were a student and you wanted to photocopy some notes it needed a permit from the party. The ideas of the Soviets failed of course and the collapse of their system was not far.
Now microsoft after the turn of the century they changed their mind:
Why home computing ?
Why stable products when we can kill them and buy new ones ?
Who cares about the programmers if their pressure of work does not allow them to learn all the ms new tools ?
Who cares about the clients of those programmers if their software becomes icompatible ?
Remember Vista ? Bugs-incompatibilities allover the shop (but thankfully vista died soon).
The new idea is to make everything fee based.
You don't buy a program noww and it's yours.
You need to pay annual fee and of course microsoft are not the only ones who do that.
Office for example. You no longer buy it and that's it. I have killed it of course in favour of open office.
In short the computer market slowly transformed into microsoft market and affiliates.
Everything is to be dictated from above, consumer needs - everything.
Why should you, as a medium sized computer firm sell the machine and the os for 500 buks and your particular business software product for 1500 ? That's criminal and big mamma knows it !