Live data from Hacker News

Learn just enough Linux to get things done

alexpetralia.com

101–110 of 138 posts

Re: Learn just enough Linux to get things done

#101
post #62
post #57

Earlier quoted context omitted.

But... the point was that "windows" per se wasn't designed for software development. The fact that you had to buy an IDE from a separate supplier supports that point, it doesn't refute it. In fact, as pointed out, Microsoft's own development environment (and the one used to create windows itself and most of MS's windows apps) until 1993 was a DOS command line compiler and separate editor. No one is saying you couldn'…

Then by that point of view no commercial OS is made for developers, including UNIX ones. It was the way that commercial UNIX vendors started selling their SDKs, with Sun being the first one, that made people actually contribute to gcc.

Being either a commercial product or open source doesn’t preclude Unix from being designed for development.

Re: Learn just enough Linux to get things done

#102
post #43

Earlier quoted context omitted.

> Was Linux designed for software development? Linux was designed to emulate Unix and run the pre-existing Unix-like userspace from GNU. And absolutely yes , Unix was "designed" for software development. That's exactly what it was in its early days: a hacker playground for the geeks at Bell Labs to try new ways of doing things. And windows wasn't. Early windows development (for years after it became popular) was done…

Yeah, software development on Unix was so natural and enjoyable, even today half the time building a Linux library or app is typically spent in byzantine shell scripts trying to determine which particular occult incantation of incompatible or broken Unix you are not running and throwing various test programs at your compiler that last made sense in 1995. The true essence of delightful and plain right software develop…

I tend to fall into I use what-ever gets the job done. Though most of the times I did hear from high Microsoft Programmers they first started with Unix/Linux and super productive in that environment. Though when it came to shipping product and getting customers to buy it all the users where on Microsoft/Apple at the time. Tending to wanting to survive and buy `nice` things they all had to learn Microsoft/Visual Studio to ship product to make monies.

Not wanting to fall into a debate about Microsoft/Linux/Apple I've tended to find that Microsoft with all its problems do have very helpful and useful technical support when you run into a major door stop when shipping a product. What they do for backwards compatibility is amazing and still something I would like in the Linux world.

Here I go again....

One of my pet peves with Linux/Unix world is `Still` after all these years their asynchronous IO is still crap compared to Free BSD. Something that after all these years its still amazing that it still isn't fixed. The whole container/virtual machine is required in the Linux world because `Some` essential tool you need is no longer works with your specific version of Linux. To make matters worse I've seen 2-3 virtual machines in enterprise environments that are just simply there to run old software that it vital for the business.

Re: Learn just enough Linux to get things done

#103
post #3

In my project, I maintain 3 documents. The first one is a similar list of basic linux knowledge that people should learn when arriving on the project. The second is "UnixTipsAndPitfalls" where people should add new entries when they encounter usefull commands. The third one is about tar.

> The third one is about tar. Why do people have such a difficult time with tar? The only tar commands I've ever needed (or seen other people need) are `tar cf ...` or `tar xf ...` (occasionally I'll need to chuck a z in there if the file is/needs to be gzipped), are other people just using far more complex tar commands than I am?

I've just never understood why tar can't have sane defaults like zip. Why do you need three or four cryptic arguments to do the most basic use case?

Its like find. I try to remember the stupid syntax and just give up and use locate instead.

Re: Learn just enough Linux to get things done

#104

Earlier quoted context omitted.

> Early windows development (for years after it became popular) was done at a DOS command line ... I could just as easily flip this and claim that Linux development is all backwards because it's still done on the command line. Given Microsoft's commitment to tooling, backwards compatibility and extensive documentation I think it's pretty lame to try and paint windows as not targeted towards developers. The difference…

Effective early Windows development required a surprisingly thorough knowledge of DOS and x86 memory management/pointers that one had to get through books (unless one was poring through Intel chip specs). Even though Petzold's books were/are sold through Microsoft in my opinion is it's a stretch to call it documentation. For a long time, the best debugger was a third party tool - Soft-Ice. Their documentation/tools f…

Those books where widely published from the start from Microsoft and Developers. There was aspects of the API were not released to the general public but it didn't stop a developer from knowing about them.

You also has the MSDN subscription that did cover a lot about the development.

Re: Learn just enough Linux to get things done

#105
post #37

This is not a surprise - the Windows ecosystem simply wasn't designed with software development in mind. Aha? What is C# and Visual Studio? Or .NET? Was Linux designed for software development? This article is so bad, I'm really getting mad over here. Stop publishing such crap, you feed a lot of people's resentment against all those hipster developers who don't want to learn by RTFM, but want to have handled everythi…

The answer really depends on what kind of software development you're doing. So much of the software development that most recent, modern, web (or ML\data-science) focused developers do only works in a Unix environment that it might as well be impossible (even though things have improved greatly) to make software in Windows. As this kind of software development encompasses all work that happens at SV tech startups and most of the work at most big tech companies, most developers will not be exposed to other workflows. Game development, real-time graphics (most PC demos are Windows only), enterprise desktop software development, and I imagine a few other niches, are generally only possible or much better on Windows. For example good luck building and running a console game on Mac OS X or even Linux, even if the tooling and the OS running on the console is sometimes Unix based (Clang and BSD in the case of PS4 for example).

Re: Learn just enough Linux to get things done

#106

Earlier quoted context omitted.

Yeah, software development on Unix was so natural and enjoyable, even today half the time building a Linux library or app is typically spent in byzantine shell scripts trying to determine which particular occult incantation of incompatible or broken Unix you are not running and throwing various test programs at your compiler that last made sense in 1995. The true essence of delightful and plain right software develop…

I tend to fall into I use what-ever gets the job done. Though most of the times I did hear from high Microsoft Programmers they first started with Unix/Linux and super productive in that environment. Though when it came to shipping product and getting customers to buy it all the users where on Microsoft/Apple at the time. Tending to wanting to survive and buy `nice` things they all had to learn Microsoft/Visual Studi…

To address that last paragraph, I don't believe it is anything special about Linux. I know a business that still keeps a small army of Windows 2000 servers in virtual machines due to software that simply won't run in any newer version (not even Windows 2003, despite being the last NT 5.x, it's just incompatible enough).

Re: Learn just enough Linux to get things done

#107
post #106

Earlier quoted context omitted.

I tend to fall into I use what-ever gets the job done. Though most of the times I did hear from high Microsoft Programmers they first started with Unix/Linux and super productive in that environment. Though when it came to shipping product and getting customers to buy it all the users where on Microsoft/Apple at the time. Tending to wanting to survive and buy `nice` things they all had to learn Microsoft/Visual Studi…

To address that last paragraph, I don't believe it is anything special about Linux. I know a business that still keeps a small army of Windows 2000 servers in virtual machines due to software that simply won't run in any newer version (not even Windows 2003, despite being the last NT 5.x, it's just incompatible enough).

We've had bad experiences mixing Office 32bit vs 64bit applications. Also with Microsoft Windows Server 2000 just double check the license agreement and software licenses some of them have caveats of running the software within a Virtual Machine.

I know Oracle licenses we had to have a dedicated machine because they charge per core/thread.

Re: Learn just enough Linux to get things done

#108
post #57
post #55

Earlier quoted context omitted.

What?!? Are we talking about Windows 1.0 and 2.0 here? I was using Turbo Pascal and Turbo C++ quite nice IDEs on Windows 3.x. Windows has always been a popular development environment for the demoscene, and games developers. The only alternatives being Mac and Amiga, none of them UNIX friendly.

But... the point was that "windows" per se wasn't designed for software development. The fact that you had to buy an IDE from a separate supplier supports that point, it doesn't refute it. In fact, as pointed out, Microsoft's own development environment (and the one used to create windows itself and most of MS's windows apps) until 1993 was a DOS command line compiler and separate editor. No one is saying you couldn'…

"Linux" per se is just a kernel. It doesn't exactly have gcc built in.

Re: Learn just enough Linux to get things done

#109
post #57

Earlier quoted context omitted.

But... the point was that "windows" per se wasn't designed for software development. The fact that you had to buy an IDE from a separate supplier supports that point, it doesn't refute it. In fact, as pointed out, Microsoft's own development environment (and the one used to create windows itself and most of MS's windows apps) until 1993 was a DOS command line compiler and separate editor. No one is saying you couldn'…

"Linux" per se is just a kernel. It doesn't exactly have gcc built in.

https://en.wikipedia.org/wiki/GNU/Linux_naming_controversy

Not sure if that adds much to the conversation, it is a v. common shorthand to use linux for gnu + linux.

Re: Learn just enough Linux to get things done

#110

Earlier quoted context omitted.

The originally released Git did not run on Windows. The first Windows-compatible release was msysgit, which was effectively a mingw/msys Linux emulation layer for Windows. Not quite native, but it worked. Kind of. Not really very well at first. The current Windows download - "Git for Windows" - is still msys-based, just with a lot of compatibility/package-management/ux-polish changes. All that and the fact that recen…

Here's the full quote: "What resulted was an expansive suite of programs and utilities (collectively, software) that were written in Linux, for Linux - much of which was never ported to Windows. One example of this is the popular version control system (VCS) called git. Developers could have written this software to work on Windows, but they didn't. " It's just wrong.

Technically it's correct. It's just really odd in tone; it almost sounds like it's unusual or negative that these utilities were not written to be completely cross-platform, as if that would be a norm.
Post reply on HN