• Welcome to the new Internet Infidels Discussion Board, formerly Talk Freethought.

5 Reasons You Should Switch From Windows To Linux Right Now

Yes, it would take a stanard for an OS. That would open up competition and bring MS doen a bit. The ANSI C standard fixed a lot of copiler portability problems. C was supposed to be a universal platform independent language.

I have no love for MS, not many do. You pay your periodic MS rax when they end of life a version. Cost of doing business. MS thrives on the fact most people are not tech savy.Istopped using MS Office years ago, I use Open Office.

Still Windows was one of the great modern inventions IMO. It had an inccalcuable effect on business and engineering software.

My first job in 1980 was at a company building systems for Telex,TWX, and DDD the orginal global nets. Nice talking to you old timer.

I haven't paid m$ a penny since 2001...I have made quite a lot of cash on the side fixing borked windoze installations over the years, though.

My first job (an apprenticeship in 1974 at age 16, with the UK Navy) involved Valves (vacuum tubes to you merkins :D ), analogue computers, synchros and servos. At one point, I made memory boards with ferrite cores and copper wire. Every bit was 1/4inch across!
Imagine my delight at becoming a chip designer in the 80s and working with the tiny (for the time) 3.5Micron processes used by Motorola for the 68HC05 series microcontrollers.

I love this industry, and at age 60, I'm still relevant....much to my surprise and delight.

Small world. I knew Motorola well. At my first place a 68k release going from 8mhz to 10mhz was a big deal. As was a 5meg hard drive. My Second job was Intel.

I am 66, my career was cut short by heart problems. When I think back it is hard to believe I went through it all.
 
Outlook is an appalling mess these days. I used Evolution back in the mid 200s - was a beta tester for Ximian. These days email is best in the cloud and in a browser. Mozilla seem to be keeping Thunderbird on life-support the last few years, but they're trying to get rid of it, and no-one is buying.

I manage three email accounts and a calendar across two PCs using Thunderbird. Can't see how web-based apps can provide a superior user experience. Sure, it can be done, but it isn't better.

I dispute your CAD claim entirely. Every mainstream and most other CAD programs are developed and run on Linux first. There are again, hundreds that are available in Linux, but will run windows under WINE or crossover.
AutoCAD, Cadence, Synopsys, FreeCAD, BRL-CAD, OpenSCAD, QCAD, CollabCAD, not to mention electronic chip and PCB CAD tools...there are too many to list. Many are free.

I find it hard to believe many professional designers would be willing to use AutoCAD, or any other Windows CAD software, through Wine. Can you even use AutoCAD 2017 at all in Wine?

https://appdb.winehq.org/appview.php?iAppId=86

I've played with FreeCAD--I can't see how anyone would consider it a viable alternative for professionals. It's an amateur's alternative, like using GIMP and Inkscape when you don't want to buy Adobe CC and a Macbook.

Ditto DTP. I think Inkscape and Scribus are world-class. Look at this comparison chart.

Scribus is shithouse.

Inkscape is fine except for the terrible support for colour management and dicey support for exchange formats; problems which only become apparent when you try to use these features in a professional workflow.

That comparison chart flatters these programs.
 
I like Xfce, but perhaps it's time to try KDE and see if I like the extra features. I don't want a glossy, glittery DE, but perhaps I can disable that shit.

ETA: So far, so good.

Yes, there are hundreds of themes for KDE, and each of those is individually customizable. You can switch off the (wonderful) desktop cube and all other fancy compositing stuff, and just have an XFCE-like experience. But, to each his own.

Breeze's toolbar looks broken when the compositor is turned off, which is a shame because everything else about that theme is clean and elegant.
 
The problem is being demonstrated. Applications work one place and not another.

I have an Alibre Design 3D CAD tool and other electrical CAD tools. Overall I spent about 5K for all of it. I would not spend that kind of money on tools that do not run on Windows. My electrical and mechanical tools written by different companies absolutely have to run in a mulii thread system and be able to share information.
 
I moved to Linux in 2002. I was trying to learn Common Lisp on Windows, but, at the time, it was a second-class citizen. The Lisp package manager (ASDF) didn't work properly on Windows, so you had to use Cygwin, and I thought that was gross. Also, there were no free Common Lisp development environments, so the consensus advice for poor students was to use Emacs, which again, felt like a second-class citizen on Windows.

I wanted something that I could customise heavily, so ended up using Gentoo for a decade. I gave up on desktop environments in 2008, and just started booting straight into X with the xmonad tiling manager. I can't go back now. Trying to use any sort of non-tiling window manager, no matter how glitzy, just frustrates the hell out of me.

I quit Gentoo for NixOS three years ago because it had better Haskell support at a time when Haskell was suffering badly from dependency hell.

I mostly despise UNIX-philosophy and UNIX-likes (and thus Linux), and I always found the proliferation of bespoke configuration file formats and program serialisation/deserialisation strategies to be utterly insane, and the existence of things like awk to be a concession to that insanity, not a solution. NixOS reinvents Linux system configuration and package management, and goes some way to make me think that I'm using a sane OS. Emacs helps with that too.

I first saw the "Windoze", "MS-DOG" and "M$" jokes back in 2002. I thought they were childish then.
 
I moved to Linux in 2002. I was trying to learn Common Lisp on Windows, but, at the time, it was a second-class citizen. The Lisp package manager (ASDF) didn't work properly on Windows, so you had to use Cygwin, and I thought that was gross. Also, there were no free Common Lisp development environments, so the consensus advice for poor students was to use Emacs, which again, felt like a second-class citizen on Windows.

I wanted something that I could customise heavily, so ended up using Gentoo for a decade. I gave up on desktop environments in 2008, and just started booting straight into X with the xmonad tiling manager. I can't go back now. Trying to use any sort of non-tiling window manager, no matter how glitzy, just frustrates the hell out of me.

I quit Gentoo for NixOS three years ago because it had better Haskell support at a time when Haskell was suffering badly from dependency hell.

I mostly despise UNIX-philosophy and UNIX-likes (and thus Linux), and I always found the proliferation of bespoke configuration file formats and program serialisation/deserialisation strategies to be utterly insane, and the existence of things like awk to be a concession to that insanity, not a solution. NixOS reinvents Linux system configuration and package management, and goes some way to make me think that I'm using a sane OS. Emacs helps with that too.

I first saw the "Windoze", "MS-DOG" and "M$" jokes back in 2002. I thought they were childish then.

Interesting, Phil, thanks - I hadn't heard of NixOS before. I'm going to download one of the Virttualbox images and try it. I note, though, that it uses a standard Linux kernel, GLibC and Systemd(shudder), and has KDE Plasma and Gnome desktops, so apart from the Declarative configuration manager, what do you see as the major advantages over a "mainstream" distro? According to the 18.03 release notes, it also has backwards-compatibility issues, which would seem to challenge the ease-of-upgrade statement....have you had to deal with those?
 
There is one glaring shortfall in your stance - Linux does not have any offerings for industry specific accounting software. And by this, I mean construction and related service industries. None of the available accounting software for Linux provides support for the specific needs of medium/large construction company accounting. Software for that industry must provide specific billing formats (such as the AIA billing format), have the capability to create certified payroll reports for governmental reporting on public works projects (including AASHTO, eCPR, LCPTracker etc. electronic reporting), and provide the ability to track individual job costs/income/profit and loss.

There may be other industries who have the same issue; I suspect there are many. And until those industries can find readily available, supported software which will meet their specific needs without causing additional costs from extra labor to customize something - Linux will never make appreciable inroads into this commercial marketplace.

I provide support for companies whose annual volume ranges from $1 million to $100 million or so. These companies are not willing to spend time or money on accounting software that won't meet their needs, and at this point basically the only OS that does provide support for that software is Windows. Very few commercial construction companies are willing to go to the cloud with their accounting data; these people are not usually tech savvy and don't trust outside vendors with their data. We are talking a large market here but I have to say that given how independent the Linux community members are when it comes to creating and supplying software I don't expect that something this large scale will ever be done. This would take a very large team and substantial investment of time and money.

Ruth
 
There is one glaring shortfall in your stance - Linux does not have any offerings for industry specific accounting software. And by this, I mean construction and related service industries. None of the available accounting software for Linux provides support for the specific needs of medium/large construction company accounting. Software for that industry must provide specific billing formats (such as the AIA billing format), have the capability to create certified payroll reports for governmental reporting on public works projects (including AASHTO, eCPR, LCPTracker etc. electronic reporting), and provide the ability to track individual job costs/income/profit and loss.

There may be other industries who have the same issue; I suspect there are many. And until those industries can find readily available, supported software which will meet their specific needs without causing additional costs from extra labor to customize something - Linux will never make appreciable inroads into this commercial marketplace.

I provide support for companies whose annual volume ranges from $1 million to $100 million or so. These companies are not willing to spend time or money on accounting software that won't meet their needs, and at this point basically the only OS that does provide support for that software is Windows. Very few commercial construction companies are willing to go to the cloud with their accounting data; these people are not usually tech savvy and don't trust outside vendors with their data. We are talking a large market here but I have to say that given how independent the Linux community members are when it comes to creating and supplying software I don't expect that something this large scale will ever be done. This would take a very large team and substantial investment of time and money.

Ruth

It may be glaring for you, but it's not something that even occurred to me to look at.
That said....I spent less than 10 seconds to find....

https://www.advanced-concepts.com/Products/osas.htm

and another minute to ask for systems that run on Linux for architecture...

https://www.softwareadvice.com/acco...=&platforms=linux&int_site_code=&subsize1_id=

Searching on Construction industry accounting quickly led to a large number of systems, such as Procore, who are offering careers in Site Reliability, which include the following specs....Linux first...

Experience in one or more of the following technologies:

  • Linux (Debian/Ubuntu a plus)
  • MVC Web Frameworks (including Ruby on Rails, Django, Phoenix)
  • Webservers (Apache or Nginx)
  • Relational Databases (PostgreSQL or MySQL)
  • In-Memory Caches (Memcache, Redis)
  • Full Text Search (ElasticSearch, Solr)
  • Cloud Computing (OpenStack, AWS)
  • Config Management (including Puppet, Ansible, Salt)
  • Containers and Container Management (Docker, Kubernetes)
  • Security Tools (nmap, Burp Suite, Nessus)

Every one of those is Open Source, running on Linux, so my "glaring" shortfall, and your claim that Linux does "not have any" products in that space didn't stand too much scrutiny.

Sorry :)
 
Interesting, Phil, thanks - I hadn't heard of NixOS before. I'm going to download one of the Virttualbox images and try it. I note, though, that it uses a standard Linux kernel, GLibC and Systemd(shudder), and has KDE Plasma and Gnome desktops
That's the wrong way to think about it. NixOS is best compared to Arch and Gentoo. It is a meta distribution. You can swap in DMs, DEs, WMs and kernels in your system config as as you like or just take some defaults. You might even be able to pick a libc. You are stuck with systemd, though service definitions are completely wrapped and declared in the nix language instead. Services are still controlled live and audited through the normal systemd tools. If that is a deal breaker, consider Guix, GNU's version of nix, which uses their own Guile based init system.

If you track nixos unstable, you will keep up to date with whatever is the latest set of package definitions that built successfully on master, and they are updated individually so you are not waiting on the release.

Nix is crazy customisable, which is not everyone's preference. I have so far only recommended nix to gentoo and arch users, who are, incidentally, overrepresented in the user community. Nix is, I would say, more customisable than Gentoo. Both are source based, and both allow you to set configuration options of a package's compile phase. But nix has a more fine grained override system that is far easier to reason about than Gentoo's USE flags. Moreover, because of nix's emphasis on reproducible builds, it is able to cache most binaries, so you compile far less frequently than on Gentoo.

so apart from the Declarative configuration manager, what do you see as the major advantages over a "mainstream" distro?
I would personally be sold on declarative configuration management, especially one such as Nix which shims all the separate and disparate configurations of most of its software. Nix also swallows the package management of other software, including node, Python, Haskell and even Emacs. But Nix also offers extremely lightweight, isolated and reproducible environments, competing in this space with docker and even offering full declarative cloud deployment, all built on the same powerful language and core concepts.

I will soon be buying a new laptop. To install nix, I will copy over my declarative config, ask Nix to build it, and so have a system up and running with all the software I want ready to go.

As I upgrade core packages, I might find something breaks on a reboot. No worries, all my previous services, kernels and configurations are still on the system and I can just rollback. Nix is happy for arbitrarily many conflicting versions of packages to be on the same system, isolated from each other but sharing reproducibly identical dependencies wherever they exist, and so not wasting too much space. Nix has a very clever and elegant way to achieve this.

Because all environments are isolated, any user can install software without admin privileges. Different users can install different versions of the same package without conflict.

For development, I have per project nix configurations which pull in whatever dependencies and dev tools I want to hack on that project. To start hacking, I tell nix to put me into the described dev environment. Different dev environments can pull in different dependencies of the same package, and I can hack on them side by side. I can also move them to other machines, bring up the environment and continue hacking. This replaces the ugly brutishness of Python development sandboxes, and alleviates much of dependency hell.

In my last job, I was hacking Ocaml, and we found ourselves needing to patch the Ocaml compiler to give us new runtime features. Easy: just override the fetch target for the compiler in a nix file, and now all our Ocaml dependencies are built against the patched compiler. My boss, a Mac user, could download the nix package manager for MacOS and work on the project using my configuration without even needing Linux.

Server side, I configure dovecot, postfix, IRC, ssh, murmur and my Haskell web server in a single configuration file.

According to the 18.03 release notes, it also has backwards-compatibility issues, which would seem to challenge the ease-of-upgrade statement....have you had to deal with those?
None applied to me. They were mostly minor changes to how system packages are configured.

Now I stress that I almost never recommend Nix to people. I have specific tastes and use cases and am pretty far removed from a normal desktop user. I have never really cared for the ever distant coming of the year of the linux desktop and still won't touch desktop environments. I live mostly in emacs, firefox and terminals, or terminals emulated in emacs. I hate most desktop software, and have never been happier with email since I ditched thunderbird for mu4e, an Emacs mode for reading and sending mail.

My brother has really taken to Nix though. He got frustrated by Ubuntu breaking and leaving junk from broken uninstalls. He would find himself having to manually install loads of system dependencies to work on a one shot python project, only to struggle with the clean up afterwards. Whether a better solution existed, he would periodically reinstall the entire damn os to get a clean state.

That hasn't happened to me in three years on Nix, thanks to environment isolation and isolation of each package's FSH. If you do:

nix-shell -p firefox

you will pull down firefox if it's not already on your filesystem and enter a one shot environment with the browser now in your path. Exit the shell and it's like it was never there, the file resources sleeping in a FSH under a unique hash, linked statically to its dependencies under their own hashes, to be used again if that environment is summoned again, or deleted in the next garbage collection. When my brother realised he could install software in such a cavalier and safe fashion without polluting his system state or even using sudo, he was blown away and signed on to the distro. It's far more lightweight and pleasant than docker will ever be.

And finally, I really like the programming language used for configuration: it is an extremely elegant pure, lazy functional language. It has the cuteness of lua, and has some really ingenious ways to do oopish things using lazy recursive records. Not to everyone's taste, however.

Phew! Congrats if you made it to the end of this overly long post.
 
That's the wrong way to think about it. NixOS is best compared to Arch and Gentoo. It is a meta distribution. You can swap in DMs, DEs, WMs and kernels in your system config as as you like or just take some defaults. You might even be able to pick a libc. You are stuck with systemd, though service definitions are completely wrapped and declared in the nix language instead. Services are still controlled live and audited through the normal systemd tools. If that is a deal breaker, consider Guix, GNU's version of nix, which uses their own Guile based init system.

If you track nixos unstable, you will keep up to date with whatever is the latest set of package definitions that built successfully on master, and they are updated individually so you are not waiting on the release.

Nix is crazy customisable, which is not everyone's preference. I have so far only recommended nix to gentoo and arch users, who are, incidentally, overrepresented in the user community. Nix is, I would say, more customisable than Gentoo. Both are source based, and both allow you to set configuration options of a package's compile phase. But nix has a more fine grained override system that is far easier to reason about than Gentoo's USE flags. Moreover, because of nix's emphasis on reproducible builds, it is able to cache most binaries, so you compile far less frequently than on Gentoo.

I would personally be sold on declarative configuration management, especially one such as Nix which shims all the separate and disparate configurations of most of its software. Nix also swallows the package management of other software, including node, Python, Haskell and even Emacs. But Nix also offers extremely lightweight, isolated and reproducible environments, competing in this space with docker and even offering full declarative cloud deployment, all built on the same powerful language and core concepts.

I will soon be buying a new laptop. To install nix, I will copy over my declarative config, ask Nix to build it, and so have a system up and running with all the software I want ready to go.

As I upgrade core packages, I might find something breaks on a reboot. No worries, all my previous services, kernels and configurations are still on the system and I can just rollback. Nix is happy for arbitrarily many conflicting versions of packages to be on the same system, isolated from each other but sharing reproducibly identical dependencies wherever they exist, and so not wasting too much space. Nix has a very clever and elegant way to achieve this.

Because all environments are isolated, any user can install software without admin privileges. Different users can install different versions of the same package without conflict.

For development, I have per project nix configurations which pull in whatever dependencies and dev tools I want to hack on that project. To start hacking, I tell nix to put me into the described dev environment. Different dev environments can pull in different dependencies of the same package, and I can hack on them side by side. I can also move them to other machines, bring up the environment and continue hacking. This replaces the ugly brutishness of Python development sandboxes, and alleviates much of dependency hell.

In my last job, I was hacking Ocaml, and we found ourselves needing to patch the Ocaml compiler to give us new runtime features. Easy: just override the fetch target for the compiler in a nix file, and now all our Ocaml dependencies are built against the patched compiler. My boss, a Mac user, could download the nix package manager for MacOS and work on the project using my configuration without even needing Linux.

Server side, I configure dovecot, postfix, IRC, ssh, murmur and my Haskell web server in a single configuration file.

According to the 18.03 release notes, it also has backwards-compatibility issues, which would seem to challenge the ease-of-upgrade statement....have you had to deal with those?
None applied to me. They were mostly minor changes to how system packages are configured.

Now I stress that I almost never recommend Nix to people. I have specific tastes and use cases and am pretty far removed from a normal desktop user. I have never really cared for the ever distant coming of the year of the linux desktop and still won't touch desktop environments. I live mostly in emacs, firefox and terminals, or terminals emulated in emacs. I hate most desktop software, and have never been happier with email since I ditched thunderbird for mu4e, an Emacs mode for reading and sending mail.

My brother has really taken to Nix though. He got frustrated by Ubuntu breaking and leaving junk from broken uninstalls. He would find himself having to manually install loads of system dependencies to work on a one shot python project, only to struggle with the clean up afterwards. Whether a better solution existed, he would periodically reinstall the entire damn os to get a clean state.

That hasn't happened to me in three years on Nix, thanks to environment isolation and isolation of each package's FSH. If you do:

nix-shell -p firefox

you will pull down firefox if it's not already on your filesystem and enter a one shot environment with the browser now in your path. Exit the shell and it's like it was never there, the file resources sleeping in a FSH under a unique hash, linked statically to its dependencies under their own hashes, to be used again if that environment is summoned again, or deleted in the next garbage collection. When my brother realised he could install software in such a cavalier and safe fashion without polluting his system state or even using sudo, he was blown away and signed on to the distro. It's far more lightweight and pleasant than docker will ever be.

And finally, I really like the programming language used for configuration: it is an extremely elegant pure, lazy functional language. It has the cuteness of lua, and has some really ingenious ways to do oopish things using lazy recursive records. Not to everyone's taste, however.

Phew! Congrats if you made it to the end of this overly long post.


Excellent reply....thanks - I'l . try the VM at the weekend. I'm a sometime kernel hacker, so configs don't care me as much as they should.
 
There is one glaring shortfall in your stance - Linux does not have any offerings for industry specific accounting software. And by this, I mean construction and related service industries. None of the available accounting software for Linux provides support for the specific needs of medium/large construction company accounting. Software for that industry must provide specific billing formats (such as the AIA billing format), have the capability to create certified payroll reports for governmental reporting on public works projects (including AASHTO, eCPR, LCPTracker etc. electronic reporting), and provide the ability to track individual job costs/income/profit and loss.

There may be other industries who have the same issue; I suspect there are many. And until those industries can find readily available, supported software which will meet their specific needs without causing additional costs from extra labor to customize something - Linux will never make appreciable inroads into this commercial marketplace.

I provide support for companies whose annual volume ranges from $1 million to $100 million or so. These companies are not willing to spend time or money on accounting software that won't meet their needs, and at this point basically the only OS that does provide support for that software is Windows. Very few commercial construction companies are willing to go to the cloud with their accounting data; these people are not usually tech savvy and don't trust outside vendors with their data. We are talking a large market here but I have to say that given how independent the Linux community members are when it comes to creating and supplying software I don't expect that something this large scale will ever be done. This would take a very large team and substantial investment of time and money.

Ruth

It may be glaring for you, but it's not something that even occurred to me to look at.
That said....I spent less than 10 seconds to find....

https://www.advanced-concepts.com/Products/osas.htm

and another minute to ask for systems that run on Linux for architecture...

https://www.softwareadvice.com/acco...=&platforms=linux&int_site_code=&subsize1_id=

Searching on Construction industry accounting quickly led to a large number of systems, such as Procore, who are offering careers in Site Reliability, which include the following specs....Linux first...

[FONT=&]Experience in one or more of the following technologies:[/FONT]

  • Linux (Debian/Ubuntu a plus)
  • MVC Web Frameworks (including Ruby on Rails, Django, Phoenix)
  • Webservers (Apache or Nginx)
  • Relational Databases (PostgreSQL or MySQL)
  • In-Memory Caches (Memcache, Redis)
  • Full Text Search (ElasticSearch, Solr)
  • Cloud Computing (OpenStack, AWS)
  • Config Management (including Puppet, Ansible, Salt)
  • Containers and Container Management (Docker, Kubernetes)
  • Security Tools (nmap, Burp Suite, Nessus)

Every one of those is Open Source, running on Linux, so my "glaring" shortfall, and your claim that Linux does "not have any" products in that space didn't stand too much scrutiny.

Sorry :)

Besides which, how many (in absolute numbers or percentage, whichever is a more pertinent measure) of the computers in a company with an annual volume in the 9-digits range actually need the " the capability to create certified payroll reports for governmental reporting on public works projects" and the like? If it's more than one in a hundred, that's a sure sign of inefficiencies, of departments duplicating each other's work. So even if it is true that for those specialised applications, no non-Windows alternatives exist, that's no reason to hold the entire company's IT infrastructure hostage. All that's required is that those units that feed whoever does the government reporting output their data in a portable format (utf-8-encoded .json or whatever floats your boat). And if there's one thing Linux applications have always been good at, it's exporting data in portable formats.

I sincerely suspect that the pains of ensuring the archives remain usable in switching from one version of Windows to the other are bigger than the pains of importing interim data produced on a Linux machine, even if the final report has to be done under Windows.
 
It may be glaring for you, but it's not something that even occurred to me to look at.
That said....I spent less than 10 seconds to find....

https://www.advanced-concepts.com/Products/osas.htm

and another minute to ask for systems that run on Linux for architecture...

https://www.softwareadvice.com/acco...=&platforms=linux&int_site_code=&subsize1_id=

Searching on Construction industry accounting quickly led to a large number of systems, such as Procore, who are offering careers in Site Reliability, which include the following specs....Linux first...

[FONT=&]Experience in one or more of the following technologies:[/FONT]

  • Linux (Debian/Ubuntu a plus)
  • MVC Web Frameworks (including Ruby on Rails, Django, Phoenix)
  • Webservers (Apache or Nginx)
  • Relational Databases (PostgreSQL or MySQL)
  • In-Memory Caches (Memcache, Redis)
  • Full Text Search (ElasticSearch, Solr)
  • Cloud Computing (OpenStack, AWS)
  • Config Management (including Puppet, Ansible, Salt)
  • Containers and Container Management (Docker, Kubernetes)
  • Security Tools (nmap, Burp Suite, Nessus)

Every one of those is Open Source, running on Linux, so my "glaring" shortfall, and your claim that Linux does "not have any" products in that space didn't stand too much scrutiny.

Sorry :)

I stand corrected. But I have to say that I have never heard of OSAS before. And the pricing - ouch! $25k estimated for 8 users with 8 modules including the first year of support and maintenance. That is triple the purchase cost of the software I support. Plus it is not industry specific and would include a lot of things that my client base has no need for, and it would just confuse them :) I also didn't see anything about the software providing electronic files for certified payroll reporting either. All they mentioned was the standard printed certified payrolls. They also seem to split job cost functionality into two separate modules - which seems a little odd to me and would result in most clients having to purchase two modules to actually perform the work that should be contained in a single module.

Your second link just took me to a "Page Not Found" error. I did my own search there, and found that mostly it was listing cloud based software including the Procore you specifically mention. As I said before, this is a hard sell to clients like mine. They want everything in house.

Just so I don't look like a luddite stuck on only commercial closed source software, you should know that I have tried several open source products. I used GnuCash for a couple of years until I finally got tired of having to work around its shortfalls for my accounting needs. I also used Moneydance for several years - with the same results. I have tried several different open source accounting packages and none were suitable for me. I have also tried the Open Tax Solver tax preparation package but was not impressed. And I don't even have complex accounting or tax issues.

I still think Linux has a long, long way to go before it is widely used in commercial offices. And I am not convinced they will ever catch up with the software selection available for Windows in the accounting software arena, for the large client base who does not want to go to "the cloud".

Ruth
 
I stand corrected. But I have to say that I have never heard of OSAS before. And the pricing - ouch! $25k estimated for 8 users with 8 modules including the first year of support and maintenance. That is triple the purchase cost of the software I support. Plus it is not industry specific and would include a lot of things that my client base has no need for, and it would just confuse them :) I also didn't see anything about the software providing electronic files for certified payroll reporting either. All they mentioned was the standard printed certified payrolls. They also seem to split job cost functionality into two separate modules - which seems a little odd to me and would result in most clients having to purchase two modules to actually perform the work that should be contained in a single module.

Your second link just took me to a "Page Not Found" error. I did my own search there, and found that mostly it was listing cloud based software including the Procore you specifically mention. As I said before, this is a hard sell to clients like mine. They want everything in house.

Just so I don't look like a luddite stuck on only commercial closed source software, you should know that I have tried several open source products. I used GnuCash for a couple of years until I finally got tired of having to work around its shortfalls for my accounting needs. I also used Moneydance for several years - with the same results. I have tried several different open source accounting packages and none were suitable for me. I have also tried the Open Tax Solver tax preparation package but was not impressed. And I don't even have complex accounting or tax issues.

I still think Linux has a long, long way to go before it is widely used in commercial offices. And I am not convinced they will ever catch up with the software selection available for Windows in the accounting software arena, for the large client base who does not want to go to "the cloud".

Ruth

Ruth....no worries, and no Luddite aspersions! Software is just a toolkit, and everyone has different needs. I agree for the most part, that if you stick to the desktop paradigm, then windows still has a (shrinking) dominance. But Mac OS and ChromeOS and desktop Android are taking that away. However the software industry is changing fast....cloud is becoming the norm because it's MUCH easier for software vendors to control the upgrade processes, and account for licensing and usage. As cloud becomes dominant, then software will run more and more in a browser, and be OS indifferent. That said, all the main infrastructure to make cloud happen runs on, and is developed on, Linux these days. Google runs entirely on Linux, and internally, even for employee use, Google banned windows 10 years ago. MacOS is a variant of BSD Unix, and shares a common ancestor with Linux. Android IS linux. Your home router runs Linux. Ditto your smart TV and your Cable box.

As I hoped to make clear, my intent for this thread was not to (re)ignite the OS religious wars, but rather to point out that the landscape has changed hugely, and while windows has stagnated, Linux has quietly taken over the world.

Paul
 
Besides which, how many (in absolute numbers or percentage, whichever is a more pertinent measure) of the computers in a company with an annual volume in the 9-digits range actually need the " the capability to create certified payroll reports for governmental reporting on public works projects" and the like? If it's more than one in a hundred, that's a sure sign of inefficiencies, of departments duplicating each other's work. So even if it is true that for those specialised applications, no non-Windows alternatives exist, that's no reason to hold the entire company's IT infrastructure hostage. All that's required is that those units that feed whoever does the government reporting output their data in a portable format (utf-8-encoded .json or whatever floats your boat). And if there's one thing Linux applications have always been good at, it's exporting data in portable formats.

I sincerely suspect that the pains of ensuring the archives remain usable in switching from one version of Windows to the other are bigger than the pains of importing interim data produced on a Linux machine, even if the final report has to be done under Windows.

Don't take this the wrong way, but you are apparently not familiar with construction office accounting and procedures. Typically in a construction office, payroll and the associated reports are done by more than one person unless it is a very small company. I support offices ranging from a single user to one with 20+ workstations. In the largest office, payroll is processed by at least 6 people (and usually more than that). They have between 500-1,000 employees depending on their workload. Their work is virtually all governmental construction. Each employee who enters and processes a payroll also generates all of the reports associated with that payroll, including the certified payroll report. The electronic reporting required by the government has very specific required information for each employee in that payroll, in a very specific format. The software has to export a file (typically a formatted xml file) that is acceptable to the government. The employees are only accounting clerks; they are not familiar with formatting anything more difficult than a Word document :)

This company has several hundred ongoing projects at any given time. It would not be feasible for them to have someone on staff to create or edit the required certified payroll files. They expect their accounting software to export a usable file for them. And most Windows based accounting software does this. I have yet to see anything mentioned in the Linux based in house software that can do this.

And accounting software is not the only reason for construction companies to use Windows. There is also the estimating software widely used for construction bidding. This particular company has at least 5 estimators running this software. In addition to that, they can't use open source office products because government offices require that any documents be sent to them in the most recent Microsoft format - and I can tell you for sure that even though the open source office products say they can be saved in that format, it is not perfect and I have had clients who had documents rejected due to formatting issues. I run LibreOffice myself and have had this experience.

In addition to this, there are many, many types of software used by individuals in an office setting that are "Windows only". There might be open source alternatives but we are talking about people who don't like change. At all. So it is a lost cause to try to get them to switch to something new. As an aside, it took me several years to convince some of my client base that they should not use IE and that Firefox was a safer option - and in most cases they only changed after they got seriously hammered by malware.

My son ran many *nix variants over the years on his computers. I agree that they are more stable and safe. But as far as commercial office work is concerned, Linux has a long way to go before it can be widely used as a Windows substitute.

Ruth
 
The software has to export a file (typically a formatted xml file)

When was the last time Linux had trouble exporting a formatted xml file?

It would not be feasible for them to have someone on staff to create or edit the required certified payroll files.
How on earth is this less feasible than instructing everyone on the field to use the software that produces those files, and do so repeatedly with every update? Without knowing any details, I'd be willing to bet a crate of beers that the money going into schooling and re-schooling people about the most recent version of software used could pay for more than one person doing just that.

Yes, there are specialised purposes for which there is currently one and only one OS that delivers the desired result without pain.

For the specialised purpose of delivering an operable OS on a scaled-down and system like a smart-phone (android is a Linux-derivate) this OS is Linux.

For the specialised purpose of delivering an OS up to task on a scaled-up system such as a super-computer, this is Linux (as of 2017 and counting, 100% of the top 500 supercomputers in the world run some version of Linux).

For the specialised purpose of creating reports compliant with the format requirements of a government agency unable to process anything but the latest version of .docx, this may be Windows. For the more generalised purpose of providing a desktop environment in which people who don't touch a computer unless they have to feel at home, it no longer is.

- - - Updated - - -

The software has to export a file (typically a formatted xml file)

When was the last time Linux had trouble exporting a formatted xml file?

It would not be feasible for them to have someone on staff to create or edit the required certified payroll files.
How on earth is this less feasible than instructing everyone on the field to use the software that produces those files, and do so repeatedly with every update? Without knowing any details, I'd be willing to bet a crate of beers that the money going into schooling and re-schooling people about the most recent version of software used could pay for more than one person doing just that.

Yes, there are specialised purposes for which there is currently one and only one OS that delivers the desired result without pain.

For the specialised purpose of delivering an operable OS on a scaled-down and system like a smart-phone (android is a Linux-derivate) this OS is Linux.

For the specialised purpose of delivering an OS up to task on a scaled-up system such as a super-computer, this is Linux (as of 2017 and counting, 100% of the top 500 supercomputers in the world run some version of Linux).

For the specialised purpose of creating reports compliant with the format requirements of a government agency unable to process anything but the latest version of .docx, this may be Windows. For the more generalised purpose of providing a desktop environment in which people who don't touch a computer unless they have to feel at home, it no longer is.

- - - Updated - - -

The software has to export a file (typically a formatted xml file)

When was the last time Linux had trouble exporting a formatted xml file?

It would not be feasible for them to have someone on staff to create or edit the required certified payroll files.
How on earth is this less feasible than instructing everyone on the field to use the software that produces those files, and do so repeatedly with every update? Without knowing any details, I'd be willing to bet a crate of beers that the money going into schooling and re-schooling people about the most recent version of software used could pay for more than one person doing just that.

Yes, there are specialised purposes for which there is currently one and only one OS that delivers the desired result without pain.

For the specialised purpose of delivering an operable OS on a scaled-down and system like a smart-phone (android is a Linux-derivate) this OS is Linux.

For the specialised purpose of delivering an OS up to task on a scaled-up system such as a super-computer, this is Linux (as of 2017 and counting, 100% of the top 500 supercomputers in the world run some version of Linux).

For the specialised purpose of creating reports compliant with the format requirements of a government agency unable to process anything but the latest version of .docx, this may be Windows. For the more generalised purpose of providing a desktop environment in which people who don't touch a computer unless they have to feel at home, it no longer is.
 
The software has to export a file (typically a formatted xml file)

When was the last time Linux had trouble exporting a formatted xml file?
We are not discussing Linux exporting a file; we are discussing commercial accounting software capable of exporting a file which meets governmental standards.

It would not be feasible for them to have someone on staff to create or edit the required certified payroll files.
How on earth is this less feasible than instructing everyone on the field to use the software that produces those files, and do so repeatedly with every update? Without knowing any details, I'd be willing to bet a crate of beers that the money going into schooling and re-schooling people about the most recent version of software used could pay for more than one person doing just that.

Yes, there are specialised purposes for which there is currently one and only one OS that delivers the desired result without pain.

For the specialised purpose of delivering an operable OS on a scaled-down and system like a smart-phone (android is a Linux-derivate) this OS is Linux.

For the specialised purpose of delivering an OS up to task on a scaled-up system such as a super-computer, this is Linux (as of 2017 and counting, 100% of the top 500 supercomputers in the world run some version of Linux).

For the specialised purpose of creating reports compliant with the format requirements of a government agency unable to process anything but the latest version of .docx, this may be Windows. For the more generalised purpose of providing a desktop environment in which people who don't touch a computer unless they have to feel at home, it no longer is.
Mid and high range commercial accounting software does not have interface changes continually. This is not QuickBooks or Quicken. Typically, this type of software only adds menu functions but does not change the overall appearance or menu other than that. The last major interface change in the software I support was when they went from DOS based to Windows based in 1999.

As for having an employee dedicated to creating and editing the required certified payroll files, I wanted to attach a sample file showing the information in the format required but TFT would not let me upload an xml file. So following find the information required to report a single employee on a single job.

<vendorID>00514</vendorID>

<contractID>514116071</contractID>

<payrollNumber>1</payrollNumber>

<payrollBeginDate>2016-06-26</payrollBeginDate>

<payrollEndDate>2016-07-02</payrollEndDate>

<fringeBenefitPaymentType>Plan Funds</fringeBenefitPaymentType>

<comments/>


-<PayrollBenefitPrograms>


-<PayrollBenefitProgram>

<benefitProgramName>BCBS</benefitProgramName>

<benefitAccountID>999999999</benefitAccountID>

<trusteeContactPerson>UNKOWN</trusteeContactPerson>

<trusteeContactPhoneNumber>9999999999</trusteeContactPhoneNumber>

<benefitProgramType>Fringe Health/Welfare</benefitProgramType>

<benefitProgramClass>Health/Welfare</benefitProgramClass>

</PayrollBenefitProgram>


-<PayrollBenefitProgram>

<benefitProgramName>Vacation</benefitProgramName>

<benefitAccountID>999999999</benefitAccountID>

<trusteeContactPerson>UNKOWN</trusteeContactPerson>

<trusteeContactPhoneNumber>9999999999</trusteeContactPhoneNumber>

<benefitProgramType>Fringe Vacation/Holiday</benefitProgramType>

<benefitProgramClass>Vacation/Holiday</benefitProgramClass>

</PayrollBenefitProgram>


-<PayrollBenefitProgram>

<benefitProgramName>Pension</benefitProgramName>

<benefitAccountID>999999999</benefitAccountID>

<trusteeContactPerson>UNKOWN</trusteeContactPerson>

<trusteeContactPhoneNumber>9999999999</trusteeContactPhoneNumber>

<benefitProgramType>Fringe Pension</benefitProgramType>

<benefitProgramClass>Pension</benefitProgramClass>

</PayrollBenefitProgram>

</PayrollBenefitPrograms>


-<PayrollEmployees>


-<PayrollEmployee>

<lastName>Someone</lastName>

<firstName>New</firstName>

<middleInitial>A</middleInitial>

<socialSecurityNumber>258963147</socialSecurityNumber>

<PartialSsn/>

<vendorSuppliedEmployeeID/>

<gender>Male</gender>

<ethnicity>CAUC</ethnicity>


-<employeeAddress>


-<txl:StreetAddress>

<txl:street>0</txl:street>

<txl:cityName>0</txl:cityName>

<txl:stateCode>KS</txl:stateCode>

<txl:postalCodeID>66666</txl:postalCodeID>

</txl:StreetAddress>

</employeeAddress>

<changeIndicator>false</changeIndicator>

<salariedEmployeeIndicator>false</salariedEmployeeIndicator>

<comments/>


-<PayrollEmployeeLabors>


-<PayrollEmployeeLabor>

<craftCode>01</craftCode>

<laborClass>01</laborClass>

<projectID>KA 3705-01</projectID>

<ojtProgramIndicator>false</ojtProgramIndicator>


-<straightTimeHourlyRate>


-<txl:Currency>

<txl:amount>25.000</txl:amount>

</txl:Currency>

</straightTimeHourlyRate>


-<overtimeHourlyRate>


-<txl:Currency>

<txl:amount>40.0000</txl:amount>

</txl:Currency>

</overtimeHourlyRate>


-<healthWellfareRate>


-<txl:Currency>

<txl:amount>0.25</txl:amount>

</txl:Currency>

</healthWellfareRate>


-<vacationHolidayRate>


-<txl:Currency>

<txl:amount>0.25</txl:amount>

</txl:Currency>

</vacationHolidayRate>


-<pensionRate>


-<txl:Currency>

<txl:amount>0.25</txl:amount>

</txl:Currency>

</pensionRate>

<apprentice>false</apprentice>

<apprenticeID/>

<totalHours>40.00</totalHours>

<straightTimeHours>40.00</straightTimeHours>

<overtimeHours>0.00</overtimeHours>


-<grossPay>


-<txl:Currency>

<txl:amount>1000.00</txl:amount>

</txl:Currency>

</grossPay>


-<totalDeductions>


-<txl:Currency>

<txl:amount>40.00</txl:amount>

</txl:Currency>

</totalDeductions>


-<netPay>


-<txl:Currency>

<txl:amount>960.00</txl:amount>

</txl:Currency>

</netPay>


-<fringeBenefits>


-<txl:Currency>

<txl:amount>30.00</txl:amount>

</txl:Currency>

</fringeBenefits>


-<grossProjectAmountEarned>


-<txl:Currency>

<txl:amount>1000.00</txl:amount>

</txl:Currency>

</grossProjectAmountEarned>


-<regularHourlyRate>


-<txl:Currency>

<txl:amount>25.00</txl:amount>

</txl:Currency>

</regularHourlyRate>


-<fICAAmount>


-<txl:Currency>

<txl:amount>10.00</txl:amount>

</txl:Currency>

</fICAAmount>


-<federalWithholdingTaxAmount>


-<txl:Currency>

<txl:amount>10.00</txl:amount>

</txl:Currency>

</federalWithholdingTaxAmount>


-<stateWithholdingTaxAmount>


-<txl:Currency>

<txl:amount>10.00</txl:amount>

</txl:Currency>

</stateWithholdingTaxAmount>


-<medicareAmount>


-<txl:Currency>

<txl:amount>10.00</txl:amount>

</txl:Currency>

</medicareAmount>


-<PayrollEmployeeLaborHours>


-<PayrollEmployeeLaborHour>

<laborHourDate>2016-06-26</laborHourDate>


-<hourlyHours>

<straightTimeHours>0.00</straightTimeHours>

<overtimeHours>0.00</overtimeHours>

</hourlyHours>

</PayrollEmployeeLaborHour>


-<PayrollEmployeeLaborHour>

<laborHourDate>2016-06-27</laborHourDate>


-<hourlyHours>

<straightTimeHours>8.00</straightTimeHours>

<overtimeHours>0.00</overtimeHours>

</hourlyHours>

</PayrollEmployeeLaborHour>


-<PayrollEmployeeLaborHour>

<laborHourDate>2016-06-28</laborHourDate>


-<hourlyHours>

<straightTimeHours>8.00</straightTimeHours>

<overtimeHours>0.00</overtimeHours>

</hourlyHours>

</PayrollEmployeeLaborHour>


-<PayrollEmployeeLaborHour>

<laborHourDate>2016-06-29</laborHourDate>


-<hourlyHours>

<straightTimeHours>8.00</straightTimeHours>

<overtimeHours>0.00</overtimeHours>

</hourlyHours>

</PayrollEmployeeLaborHour>


-<PayrollEmployeeLaborHour>

<laborHourDate>2016-06-30</laborHourDate>


-<hourlyHours>

<straightTimeHours>8.00</straightTimeHours>

<overtimeHours>0.00</overtimeHours>

</hourlyHours>

</PayrollEmployeeLaborHour>


-<PayrollEmployeeLaborHour>

<laborHourDate>2016-07-01</laborHourDate>


-<hourlyHours>

<straightTimeHours>8.00</straightTimeHours>

<overtimeHours>0.00</overtimeHours>

</hourlyHours>

</PayrollEmployeeLaborHour>


-<PayrollEmployeeLaborHour>

<laborHourDate>2016-07-02</laborHourDate>


-<hourlyHours>

<straightTimeHours>0.00</straightTimeHours>

<overtimeHours>0.00</overtimeHours>

</hourlyHours>

</PayrollEmployeeLaborHour>

</PayrollEmployeeLaborHours>

</PayrollEmployeeLabor>

</PayrollEmployeeLabors>

</PayrollEmployee>

</PayrollEmployees>

</Payroll>


Given the complexity and all the information required, I am not at all sure how you expect a person to create or edit this type of file weekly for several hundred employees working on several hundred jobs. And as I said, I have not found any Linux based commercial accounting software capable of creating an acceptable file for this purpose.

Ruth
 
I think the point was that it is easy to write software to generate XML from a payroll program, and that there is no technical reason why a Linux program couldn't generate an XML file to your industry's specifications. The XML sample you've provided has a very simple structure; it's just a matter of pulling it out of a database.

Problem is just that nobody has actually written that feature for a Linux payroll program.
 
I think the point was that it is easy to write software to generate XML from a payroll program, and that there is no technical reason why a Linux program couldn't generate an XML file to your industry's specifications. The XML sample you've provided has a very simple structure; it's just a matter of pulling it out of a database.

Problem is just that nobody has actually written that feature for a Linux payroll program.

Well, maybe not so easy. The developers for the program I support had to make underlying changes in the database payroll and job cost modules to provide the data required for this xml file; I also talked to a friend of mine who supports another commercial accounting program, and they had to do the same thing. As usual, the data the government is requiring is not exactly a good match for the real world.

So yes, it is entirely possible that Linux based software could generate the required file - but I would expect they would also have to make some changes in their accounting program too. It was not a quick or easy process for the developers of either the program I support or the program my friend supports.

Ruth
 
I have 4 PCs. One runs Windows 7, two are Windows 8, and one runs Windows 10. All of them work and get through the day, doing whatever is asked of them. Telling me I should change the operating system is like telling me I should swap engines in my car, because it will go faster and get better fuel mileage.
 
Back
Top Bottom