Live data from Hacker News

Is XYplorer really written in VB6?

xyplorer.com

171–180 of 232 posts

Re: Is XYplorer really written in VB6?

#171
post #74

For no specific reason other than life random offers I've gone through a few of those "dead and bad" reputational language in my career (VB6, Delphi, PHP), mostly as a case of "there is a lot of money being a decent programmer who can use these correctly". And there are three things I learned about it 1. There is a lot more money in it than you would think. The good part of "there is a lot of newbie using it" is that…

I toyed with Lazarus a bit and I honestly think it's insane it's not more popular. Instant build times for GUI. You want to add a plugin? Press one button to recompile the entire IDE. You can recompile the IDE from GTK to Qt. With one button. I think I'd prefer it over Qt Creator, for example, for building GUIs on Linux. The catch? I don't know Pascal, and there is no way to learn it. There are so many versions of Pa…

Never heard of Lazarus before. I used Delphi back in the day. Now I want to again!

Re: Is XYplorer really written in VB6?

#172
post #49

> No multi-threading. A pity. But for a file manager not that important. It's honestly blazingly fast in comparison to Windows Explorer on Windows 11.

As much as I like C# the language, I honestly think that it and .NET are fundamentally flawed when it comes to performance. Native Windows apps just never seem load that fast or work that great. It’s kind of crazy how much better the basic OS apps feel in macOS compared to Windows. I wish Microsoft would have gone in a direction more similar to Apple, with an AOT compilation and reference counting. JIT and garbage co…

I've built many apps using C#/Winforms and the runtime's performance was never an issue.

In my experience, main performance killers are:

- calling blocking functions on the UI thread

- N+1 problem

And there's nothing specific to C# about it. .NET garbage collection becomes an issue only when you allocate lots of objects per second (100k or millions), and very few UI apps do that. If there's perceived sluggishness, I doubt it's the runtime.

Re: Is XYplorer really written in VB6?

#174
post #58

Earlier quoted context omitted.

Could you specify what legacy baggage you would like to eliminate, and what modern features you miss in VB6?

The author has listed quite a few like unicode and 64 bit support ^^

Those are both good examples!

Re: Is XYplorer really written in VB6?

#175
post #166

Earlier quoted context omitted.

> PHP 8 is a top notch language Maybe the things they've added lately have been well designed, but did they ever actually fix the WTFs from PHP 4? JavaScript has the same problem. They added `let` and `const` but never removed `var` or `==`. If you take a look at ESLint rules there are dozens of footguns that could have been fixed in the language. Not as bad as PHP's footguns, but still...

What is PHP good for these days? What does it do better as a metric than any other language? It's easy to use, easy to get into for beginners, and is a requirement for WordPress. But performance? Flexibility? Some other random metric-word?

For me, 2 main advantages PHP has, for real production code, are:

1) Easy hotfixing/debugging on production servers. Just edit a file and save. Our teams which program in PHP solve blockers way faster than the Go teams.

2) "Shared nothing" architecture, which has two advantages:

a) it's scalable without additional effort, because PHP processes are stateless

b) better security, especially if you're doing multitenant SaaS, because all requests are isolated from each other (there was a bug in ChatGPT when you could view chats of other users because requests from different users were served by the same OS process in Python and they had a race condition bug when switching between users inside the same OS process - such bugs are very rare in PHP)

Not saying it's unique to PHP, but these 2 advantages for real production code are often overlooked; people instead focus on non-essential minutiae like "inconsistent function name, I'd name it differently tbh"

Re: Is XYplorer really written in VB6?

#176

Earlier quoted context omitted.

> Just look at time and floating point numbers in Java What do you mean? The time & date API in Java is excellent, and the float and double types follow the IEEE standard.

It took nearly 20 years to sort it out. Before Java 8, January was 0 and getYear() for today would return 125.

Wasn’t Java 8 released 11 years ago? If PHP had been in its current state back then it would have been a masterpiece.

Re: Is XYplorer really written in VB6?

#177
post #76
post #51

Earlier quoted context omitted.

The way COM model worked, is that an application (for example, microsoft word) would implement this COM interface (that they'd have to anyway, for various reasons such as interoperability), and it would become available as a component to be used in another application. It's a grandiose vision. It just didnt work out because of how complicated it is in practise to implement the COM interface(s), and not enough apps di…

It was (is) an ABI, more stable than something available through a C/C++ compiler. It’s been years since I’ve lived in a Windows world, but as I understand it, it’s still very much alive and well. It didn’t fail because it was complicated, although it was, but it continued to evolve and was eventually superseded by .net. I worked with win32 & mfc quite a bit and had to interface with Com/activex a little, usually thr…

I remember some things being very tiresome, esp. from a C or C++ view of the world. There weren't any default implementations for most things, as you would find in Java. So for Java you might have an abstract class that got you 95% there, in COM/OLE you needed to do that 95% yourself, and this was before you had lots of public domain things available. Later, we could go on Codeguru or whatever and get a good example.

Many things were designed at the level of Microsoft App 1 (e.g. Word), and then when they needed something different for another app (e.g. Shell) they extended the interface in a different interface, and so on. The only authority for interfaces was Microsoft. Nobody else was really able to come along and make a set of interfaces that would become universal for something new, so you had to wait for Microsoft's design, and then it would be designed to support the way it was implemented in Word, Excel, or Internet Explorer, and they would not release the implementation details, just an interface specification and some hastily-written documentation.

Naming things was hard for Microsoft, so they came up with idiotic names like "IClassFactory" because they couldn't decide if they wanted to call something a Class (Smalltalk-style) or a Factory.

It took forever to learn because the documentation was not oriented around practical things, it was toy examples that didn't even work within the system. As a young programmer, it took me a long time to understand how everything was registered, what the difference between a CoClass and an interface really was, where to get that initial IUnknown pointer, etc., because the books were so focused on vtables and toy examples, etc.

The system was mostly replicated by Netscape/Mozilla for XPCOM, so it had areas where you could apply the same principles on other platforms. It also had superficial similarity to SOM/CORBA so learning those systems (thankfully mostly gone now) was also somewhat easier after learning COM.

There were several categories of applications.

- Those that used COM/OLE fully, as the underlying basis of everything they did, used structured storage, and exposed components and automation to the rest of the world.

- Those that implemented some sort of automatability and things like shell preview.

- Finally, those that used the minimal amount to support drag and drop and the like.

After a while, Microsoft's habit of introducing the next big thing and mostly abandoning it a few years later caused Windows application development to decline. COM has always been around, but many related technologies come and go. .NET blurred the lines between COM and the .NET runtime, and then Microsoft started making substantial overhauls of the Windows runtime without, IMO, getting buy-in. Why write WPF when it's similar to but incompatible with UWP? Why write UWP when Win32 works just fine? I wonder if they're going to introduce yet another? Oh, sure, Windows App SDK. Should we use GDI+ or Direct2D? Which one is going to "win"? Why do any of this when Microsoft themselves is using Electron in VS Code?

Re: Is XYplorer really written in VB6?

#178
post #166

Earlier quoted context omitted.

> PHP 8 is a top notch language Maybe the things they've added lately have been well designed, but did they ever actually fix the WTFs from PHP 4? JavaScript has the same problem. They added `let` and `const` but never removed `var` or `==`. If you take a look at ESLint rules there are dozens of footguns that could have been fixed in the language. Not as bad as PHP's footguns, but still...

What is PHP good for these days? What does it do better as a metric than any other language? It's easy to use, easy to get into for beginners, and is a requirement for WordPress. But performance? Flexibility? Some other random metric-word?

For me: I can quickly build a small thing and run it directly. It is interpreted, no build/CI/CD/whatever. It's not just a more powerful PowerShell, but also something that I can use to build a web page with a data source, Datatables.js and ... 30 minutes later it's good to go.

For my company: minor apps with laxe requirements, hotfixes usually involve editing a single file, in place, then push to Git. We don't have "serious" apps in PHP, but we have a few low tier apps using it, it's simple and convenient.

Re: Is XYplorer really written in VB6?

#179

Earlier quoted context omitted.

Then add in Laravel and chefs kiss. Honestly 90% of web apps could be easily built with PHP, Laravel, Inertia and React/Vue in half the time.

How is that any better than React + ?

PHP is extremely simple to use. That makes it extremely simple to onboard new people and also to support. Complexity brings associated costs, sometimes bigger than the development itself.

Re: Is XYplorer really written in VB6?

#180
post #74

For no specific reason other than life random offers I've gone through a few of those "dead and bad" reputational language in my career (VB6, Delphi, PHP), mostly as a case of "there is a lot of money being a decent programmer who can use these correctly". And there are three things I learned about it 1. There is a lot more money in it than you would think. The good part of "there is a lot of newbie using it" is that…

> I've gone through a few of those "dead and bad" reputational language in my career (VB6, Delphi, PHP) It's been ages since I've last seen Delphi in real life - must be over 20 years ago by now. But I'd not put PHP in the same league of "dead and bad" with it... yes, it's not the "hipster" language these days, that's been taken over by in frontend, NodeJS in the backend and Go for "need to quickly cobble something t…

My brother build something quick and dirty in Delphi for his company in 4 hours, back in 2016. It was supposed to be a stopgap for 3 months until the real developers (he is in infrastructure, but used to write in Delphi 25 years ago) will write a "proper" app. 3 years later the developers said it will take 3 months for 4 people to write it, so they were denied. App still running today. Company with over 1 billion in yearly sales.
Post reply on HN