Hacker Newsnew | past | comments | ask | show | jobs | submit | haglin's commentslogin

I find inheritance works best when you model things that don't exist in reality, but only as software concepts, for example, an AbstractList, Buffer or GUI component.


Really like this concept!


Splitting up a PR is a lot of work, especially if you want each commit to compile, but it would be great if you could categorize changes using 5–10 colors and then have checkboxes that you can toggle to hide code corresponding to a color.

What each color means would depend on the PR, but, for instance, yellow = refactoring, brown = test code, blue = drive-by fix, orange = more efficient data structure etc.

The colors and their meanings could be set by either the author or the reviewers. It would be similar to the file checkboxes that exist today, but in this case, it would be per concept, not per file.


How it started: "It would be great if you could categorize changes using 5–10 colors and then have checkboxes that you can toggle to hide code corresponding to a color."

How it's going: https://gitmoji.dev/

IMHO, the novelty wears out fast. Especially when your git history starts looking like a Messages thread.


It would be in the "Files changed" section on GitHub, not in the git history. If you don't want to see the context, you can turn it off.


Yeah, Windows 2000 was probably the best operating system Microsoft ever produced. It had no crashes, a snappy/intuitive/sleek user interface, and DirectX support for games. I am currently running Mac OS X because I never liked Windows XP/Vista/10/11.

In hindsight, the progress Microsoft made in the ten years between Windows 3.0 (1990) and Windows 2000 seems incredible. They transitioned from a 16-bit shell running on top of DOS to a fully-fledged operating system with a hardware abstraction layer, preemptive multitasking, permissions, a registry, proper device drivers etc.

Twenty-five years later, there has been basically no progress.

At a minimum, I would have expected something like the Knowledge Navigator

https://www.youtube.com/watch?v=umJsITGzXd0


> It had no crashes

Windows 2000 is my favorite release ever, but anecdotally, I can deny the "no crashes" claim. Sure it was rare, but I had my share of BSODs and weird behavior on it. Still much more solid than... pretty much every other release.


I think since Windows 7, it has been very solid except for maybe third party kernel driver issues which needs direct kernel access out of necessity. Today when you have a BSOD, it’s like a Linux, Mach kernel panic etc - 99% likely to be a hardware problem.


CrowdStrike


> except for maybe third party kernel driver issues which needs direct kernel access out of necessity.


Yeah. It was indeed great, I was using for 10 years, then moved to Win2003 with I still use. But I think Win2003 is even better. It have better kernel, proper SMP support (multicore), good PAE support (16GB RAM), newer drivers, etc :)


Why use something so… old?


Because its snappy, have great GUI, I control it, I have all the tools for maintenance (compilers, DDK, disassemblers)..

I know, there pretty nice Linux distros that are lightweight and snappy too. One day... :) but not yet :)


Fans of SimH might give you many reasons for enthusiasm in retro-computing.

https://simh.trailing-edge.com/


They want to see if anyone will ever 0-day their system.

To be fair, I have old MacOS laptops that are my wife's laptops, we keep them around because they still turn on, and they have all her old files (I've backed it all up several different ways for her), but I never go on the web with any of the browsers installed on those systems.


> a fully-fledged operating system with a hardware abstraction layer, preemptive multitasking, permissions, a registry, proper device drivers etc.

Windows NT, which was developed by people (Dave Cutler et al.) who knew how to design and build operating systems (VMS, etc.).


there is a book about it, called "inside windows nt". I had read it back in the day,

it is by helen custer. it talks about dave cutler's work on it, apart from other stuff.


Got a copy sitting right next to me! Along with Inside The Windows NT File System (and The Design and Implementation of the 4.4 BSD Operating System).

'Windows Internals' series is the successor to Inside Windows NT.


ha ha, mark russinovich is one smart dude. and so is charles petzold before him.


I had a weird old "laptop" that I was given as a kid, didnt know jack about computers back then so I couldnt tell you what it was. It was one of those that came with a big heavy docking station and it couldnt run without it anymore so I assume the battery was dead. Had Windows 2000 and I used to play AoE 2 on it all day and it was smooth and the interface was snappy. Fond memories. I remember being really confused when people told me that Windows 2000 was bad.


Bear in mind that Microsoft was the largest commercial UNIX vendor in licensing XENIX for the TRS-80 Model 2 alone. From this experience, they had significant knowledge of 32-bit preemptive multitasking.

That exposure allowed them to see how valuable Dave Cutler's PRISM team would be in a total redesign in melding VMS and (whatever tolerable) UNIX features into a new kernel, but focusing it upon Win32.

There were OS/2 and POSIX emulation layers also, but these were obviously second class.


I love Windows 2000, it was pretty great, but display driver crashes would take down the system (similar to NT4). Also if 2000 was installed in most homes it’d be about as much of a fiasco as pre SP2 Windows XP. IIRC there were a bunch of worms that did affect Windows 2000.

Windows 10 on the other hand will deal with display driver crashes just fine, falling back to safe mode.


>In hindsight, the progress Microsoft made in the ten years between Windows 3.0 (1990) and Windows 2000 seems incredible.

compared to what, Linux? the BSDs? Solaris? OS/2 didn't achieve market success but it added major feature subsystems at the same brisk pace.


Since JDK 11 (released in 2018).

"Launch Single-File Source-Code Programs" https://openjdk.org/jeps/330


In France a local magazine for Linux enthusiasts has its cover on "Java as a language for scripting". Things are moving.


JFR only samples running Java methods.

I would guess at least some of the bottlenecks are in hardware, the operating system or in native code (including the JVM) in this case.


"Left unquestioned, assumptions and expectations could have caused us to miss one of the most impactful changes we’ve made to our operational defaults in a decade"


> the only knock you can put on Java for reliability is null-safety

FWIW, nullity control has been added to the Valhalla project, so it might be fixed going forward.

https://youtu.be/Ma0NtbG0mHY?feature=shared&t=1076


Two years it too short.

The reason I now use gmail and not hotmail is because Microsoft did a similar thing 20 years ago. When I lost my hotmail account, I thought I might as well use gmail from now on. Reason I didn't log into my hotmail account was because I used the mail address I got from the university.


An alternative to avoid safepoints (only samples executing threads)

    var r = new RecordingStream();
    r.enable("jdk.ExecutionSample").withStackTrace().withPeriod(Duration.ofMillis(1));
    r.onEvent("jdk.ExecutionSample", e -> {
        store.addSample(e.getStackTrace().getFrames());
    });   
    r.startAsync();
    ...


You get JFR's precision but inherit its blind spots as described in [1]:

> demo1: ... JFR will not report anything useful at all, since it cannot traverse stack traces when JVM is running System.arraycopy()

I'd rather run jstack in a loop than lose System.arraycopy() (or, in fact, any native code be it JVM's or JNI).

[1] https://github.com/apangin/java-profiling-presentation


I would rather use Andrei Pangin's async-profiler than doing something custom with jstack.


There are multiple ways to represent an optional value, for example:

1) an empty list/array 2) throw an exception if the return value is missing. 3) -1

Optional can be used as a better alternative in all these cases. It's not just null.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: