Perl on Windows or Linux [closed] - perl

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
Questions asking us to recommend or find a tool, library or favorite off-site resource are off-topic for Stack Overflow as they tend to attract opinionated answers and spam. Instead, describe the problem and what has been done so far to solve it.
Closed 8 years ago.
Improve this question
I am new to Perl,I want to do a project assigned to me in Perl.
Should I use Perl in Windows or Linux?
I am not able to conclude the significant advantages or disadvantages of Perl on a particular OS.

Perl is ridiculously portable. By and large, the ports act pretty similar on different machines. For the most part, you won't notice a difference between running on Windows and running on Linux (or BSD, or Mac OS X, or any number of older platforms: Plan 9, Amiga, VAX, Mac OS Classic, etc.).
That is, for the most part. There are a few weird things that will bite you occasionally (especially the Platforms and Function Implementation sections). Given a choice, I would pick Perl on Linux. That's partly because I like Linux more than Windows, partly because many of Perl's core modules and functions are inspired by POSIX, and partly because many of the core developers use Linux (the perlport document is written largely as "this is what you'll see different if you run on something other than UNIX.").

There are some modules which are better supported under Linux than Windows, but the vast majority work well in both. In particular, the DWIMperl distribution for Windows is amazing. It's based on Strawberry Perl which includes the Padre IDE, a modern version of Perl, database drivers, Moose, most of Task::Kensho, Dancer, and many, many other commonly used modules, along with tools such as cpanm and a C compiler, so installing new modules is a breeze. Given that modern Perl development involves lots of CPAN modules, it's great to have a batteries-included distribution.
So really, I'd suggest using whatever operating system you're most comfortable with. The days when Perl was much better supported under Linux compared to Windows are mostly behind us.

I said to go for Linux OS only because in all Linux machine are have pre-installed Perl modules.So better to Linux machine only.

Related

Why cant all applications run on one single OS? [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 2 years ago.
Improve this question
Before tools like docker and VMs, bare metal servers were used to deploy and host applications. but tools like docker and VM allow us to have more than one OS on the same machine, compared to bare metal server which only allows us to have one OS.
Why is this an issue? Why cant all application run on a single server? why do some apps need a separate/different server?
Applications are code, which have been compiled to execute on a certain system.
Different OS's
Some OS's have different way of doing things and when we code we have to take that into consideration.
For instance in windows paths look like this c:\this\is\a\path and in linux they may look like this /this/is/a/path. Now if my application is just working with paths I could make my application work on any platform. But I would need to consider how I compile it and what language I run it in, or if its written in a translated language such as python or node.js then I need to ensure that I have written the code in a OS agnostic way. For instance I could reference paths using an OS agnostic way by joining the folders together and not trying to second guess what OS the machine is running on.
If I compile my code from C# but I want it to run on any machine will it check the OS at run time and then alter the way it checks for Paths etc...?
Also an experience I had, where in my web application I had to check if a file was an image, I was using a library which would apperently only work on windows, so when I deployed my docker container to my ubuntu machine I had a run time exception that I had a library missing. It was System.Draw or something. So even once you have your app containerized that may not neccessarily be problem solved 🤣
This is just an example with Paths, but that's just an example. Some .NET Framework applications require the machine has special run times installed on it, and these (someone correct me if I'm wrong) wouldn't install on linux, so then the code wouldn't run.
.NET CORE and Docker
With the advent of .NET Core this is the direction we are trying to move in. For instance .NET Core is supposed to be runable on any platform.
Also with Docker, docker containers wrap everything that is required to run an application into one package, so it doesn't care what your registry settings look like, it doesn't care if your missing the library or that library everything the app needs to run is bundled in with the container. This means if it runs a certain way on system A, then you can expect it will run the same way on system B.
Architecture
Also we have the issue of 32 and 64 bit architecture. This is basically the rawest level of how information gets processed on the machine. When the code is compiled it is compiled into assembly which your CPU then processes. Depending on whether you have a 32/64 bit machine or OS, this will affect whether the OS and CPU will be able to run the instructions. Yes I believe that 32 bit code can run on a 64 bit machine, but not vice versa. Also if you have an old windows game which uses a 16 bit installer, good luck trying to get that to run 😃. I think I did manage to get an old windows game running in ubuntu in 64 bit. It was a 32 bit game, but the installer was a 16 bit installer.
I'm not expecting this answer will win any awards, but might do as a nice place holder until someone provides a better answer 😀
Compiled Languages
Objective C/ Swift - Will this only work on apple devices? ()
.NET Framework - will mostly work on windows devices, although some code may work on linx via mono
Java - This is actually cross platform and runs on the Java Run Time, I'm not sure if what it compiles down to is the same for all machines, or whether it has to be compiled into something different for each platform
c++ Is compiled and what you compile on one OS will not work on another OS.
Interpreted languages
Python runs on any machine, atlthough if you want your script or code to be platform agnostic you have to take care
bash although primarily unix I have seen better support for this on windows lately, I strongly doubt that every script written for unix would run first time on windows without a hitch
php runs on unix based systems and windows. I'm not sure how much care is requrired to keep this code OS agnostic, although I have a feeling some care may be required.

PostgreSQL for Debian vs Redhat (Centos) [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
This question does not appear to be about a specific programming problem, a software algorithm, or software tools primarily used by programmers. If you believe the question would be on-topic on another Stack Exchange site, you can leave a comment to explain where the question may be able to be answered.
Closed 3 years ago.
Improve this question
PostgreSQL 11 works more efficiently in debian or redhat. Accordingly, I will choose a server and plan training. What are the advantages and disadvantages. Which operating system does the Postgres committee like?
There is no PostgreSQL committee. There is core, but they don't determine which operating systems are supported.
From the documentation (you probably read that):
A platform (that is, a CPU architecture and operating system combination) is considered supported by the PostgreSQL development community if the code contains provisions to work on that platform and it has recently been verified to build and pass its regression tests on that platform. Currently, most testing of platform compatibility is done automatically by test machines in the PostgreSQL Build Farm. If you are interested in using PostgreSQL on a platform that is not represented in the build farm, but on which the code works or can be made to work, you are strongly encouraged to set up a build farm member machine so that continued compatibility can be assured.
In general, PostgreSQL can be expected to work on these CPU architectures: x86, x86_64, IA64, PowerPC, PowerPC 64, S/390, S/390x, Sparc, Sparc 64, ARM, MIPS, MIPSEL, and PA-RISC. Code support exists for M68K, M32R, and VAX, but these architectures are not known to have been tested recently. It is often possible to build on an unsupported CPU type by configuring with --disable-spinlocks, but performance will be poor.
PostgreSQL can be expected to work on these operating systems: Linux (all recent distributions), Windows (Win2000 SP4 and later), FreeBSD, OpenBSD, NetBSD, macOS, AIX, HP/UX, and Solaris. Other Unix-like systems may also work but are not currently being tested. In most cases, all CPU architectures supported by a given operating system will work.
The majority of hackers use Linux, but there are people who develop on FreeBSD, MacOS or Windows.
If you know that PostgreSQL works most efficiently on certain Linux distributions, you know more than I do.
When choosing an operating system for PostgreSQL, I would proceed like this:
List the operating systems you are familiar with (or for which your organization has skilled administrators).
Exclude all operating systems for which there is not more than one animal in the buildfarm.
Exclude Windows.
Then pick any of these.

Which OS will be the best subsitute for the Microsoft Windows XP/7 [closed]

Closed. This question is off-topic. It is not currently accepting answers.
Want to improve this question? Update the question so it's on-topic for Stack Overflow.
Closed 11 years ago.
Improve this question
I want to switch my OS from Windows XP to but as a software developer I am worried about that will I able to install/run the development tool successfully [Software like: Visual Studio, Sql Server, PHP ... other related tool].
Which OS will be the best subsitute for the Microsoft Windows XP/7, from a developer point of view?
This really depends what platform you want to develop the software for. If you are writing Windows programs, Microsoft makes great developer tools which of course run on Windows. The effective tools to develop Mac software are (no surprise) available on Macs. So there's really only a choice if you're targeting cross-platform or Linux. You can use virtual machines to construct whatever testing environments you need, so the main choice is your preference.
Since you sound like you are interested in experimenting with new environments, I would suggest you try Linux. I primarily use Emacs with GNU Global and GDB in Linux to do all my development, and I have benefited from other tools like strace and Valgrind. Eclipse is also available, and I hear it's nice. Since you're used to MS tools, I'll warn you that the open-source stuff isn't as polished or as integrated as MS's stuff appears to be, but it's certainly capable.
Well, if you need Microsoft-based software, such as Visual Studio and SQL Server, the best choice of OS will probably be a Microsoft one...
After that, you might want to run some Virtual Machines, for PHP / Linux development.

BSD Virtual Guest [closed]

Closed. This question is off-topic. It is not currently accepting answers.
Want to improve this question? Update the question so it's on-topic for Stack Overflow.
Closed 11 years ago.
Improve this question
So I am a big fan of VMs, actually got experience enough to switch my development box to a linux distro. At this point I would like to get more experience with BSD and hope to do this with a VM. So the question I have is what configuration is correct?
BSD...
List item
FreeBSD
OpenBSD
PC-BSD (I know it is FreeBSD with a KDE, but might be simpler to get started with)
Which Virtual Machine is best for these guests (on a linux host)
List item
VMWare Workstation (have a license for 7)
Virtualbox 4
QEmu
Other?
Any suggestions from experts would be great. I was able to get FreeBSD and PC-BSD installed on virtualbox 4, however I get horrible resolution that I can't seem to fix.
I found the 'right virtual machine' requires some tinkering. VirtualBox ran Plan9 really slowly, qemu+kvm ran it hundreds of times faster. qemu+kvm also ran an Ubuntu guest at what felt like faster-than-hardware (at least for booting :) but I've read accounts from people that say the exact opposite, that VirtualBox outpaced qemu+kvm. Test them both :) that way you get the experience, and can know which one is more usable for your environments.
As for the BSDs, I ran OpenBSD for years and really liked it. You probably can't go wrong with FreeBSD. Learning both wouldn't be a bad idea -- they have different feature sets and excel at different tasks.
Don't let KDE in PC-BSD sway you too much, the different KDE things ought to be available in all their ports trees. Or try life without KDE or Gnome for a while.
I run FreeBSD 8-STABLE guests in VirtualBox 4.0.4, running on Windows (XP & 7) systems. It works, but there are some caveats. Seamless mode (which you might use with Linuxen) doesn't work, and it takes some configuring to get things set up exactly right. See http://wiki.freebsd.org/VirtualBox for the settings you need.
I played with virtualized PC-BSD, and it worked about the same as FreeBSD, since it is FreeBSD. PC-BSD has some nice features for the newbie to take some of the pain out of installing software.
I have also tried NetBSD as a VirtualBox guest. It "works" (for some definitions of work), but you have to launch the VM with something along the line of "vboxsdl.exe --nopatm --startvm [machine]". This worked for me on one Windows box but not on another. I didn't get around to seeing if X works.
I have not tried OpenBSD, but I seem to recall there being images out there, so it should work to some degree.
I don't have experience with other virtualization software, so can't help you there.

What O/S do you prefer for web development, and why? [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 9 years ago.
Improve this question
I consider myself fairly versatile when it comes to O/S selection. I have used DOS/Windows PC's all my life, switched my main laptop to Mac two years ago, and have used numerous flavors of Unix/Linux/BSD while studying for my Comp.Sci. degree.
However, as I'm trying to improve my development environment, I'm starting to wonder if I'd be better off scrapping the Macbook for a PC with a different O/S flavor (to support a different set of tools and IDEs).
What O/S do you prefer for (web) development, and why? (prefer answers from people who have real-world experience coding on multiple platforms)
(Note: I am aware of this question discussing client vs. server O/S - what I'm interested is the whole development environment, and not limited to the 'Windows crowd')
It's really going to depend on the type of web development you want to do. If you are doing PHP (or LAMP, Perl, Python, Ruby), then Linux is probably the best way to go. If you are looking at doing .Net development, then Windows would be your best bet. I think if you're on Java, then Windows or Linux would be equally good.
For LAMP development on Linux, you are probably best going with Netbeans or Eclipse for your IDE. Personally I prefer Netbeans, but it depends on which you are more comfortable with. If you want to pay for an IDE, Zend is one of the better options. As far as distros go, any popular distro should be fine. I hear Ubuntu is pretty popular although my personal favourite is Mandriva.
You don't need to scrap your Macbook to use different operating systems. Many developers run multiple OSs without giving up the Macbook experience.
I prefer my Macbook and despise the fact that I have to go to work and use a Windows environment (I keep hitting the ALT key looking for COMMAND!). Ruby and rails development is easier because most of the developers are using OSX and therefore any help you need is tailored for your development environment, it just doesn't work as smoothly or as fast on Windows.
I haven't run into anything I've got in my work environment (Emacs, IntelliJ etc.) that I can't get for Mac and it even looks a whole lot better. Ubuntu even looks better and is a lot more reliable than any Windows system I've ever used.
If you're locked into the .Net world, then Windows is really the only choice.
Otherwise, the "big name" web environments (Apache, Tomcat, Spring, Glassfish, Rails, JBoss, Grails, Weblogic, ...) are all commonly deployed on some flavor of *nix. A Linux-based laptop gets you max geek cred; OSX gets you a full-fledged Unix environment with a very polished UI and less do-it-yourself maintenance.
If you're doing Java, then Eclipse, NetBeans, and IntelliJ will run on all of the above (Windows, Linux, Max), so you can choose based on what else you want to have in your environment.
I got 3 systems,
Windows XP, Windows 7 RC, Ubuntu 9.04
Windows Vista
Mac OS X
Mac OS X would be my choise, since you can get good enivroment to work on. I got Adobe Create Suit and Textmate, they aren't free. Free alternatives GIMP/Inkscape and many free text editors are available for mac.
LINUX is fine but Adobe suit doesn't work on it, you have to use GIMP and Inkscape, obviously they are nowhere near Adobe Photoshop and Illustrator. Although if you aren't interested in using Adobe CS you can use Ubuntu distro which is easier than other LINUX distro and quiet popular, so you won't have any problem finding solution. Eclipse would be my text editor if I use LINUX.
Windows is another good choise if you are familier with Windows but risk of losing important files which took you hours to develop ;-) , you know its main problem is Virus and spywares. If you can get decent Anti-Virus (like free Avast ect) you can live with it.
In my opinion, there is "nearly" no reason to choose Linux over OSX for web development. OSX is unix'ish, so you can run almost any server on OSX almost the same way as on Linux.
One big reason to choose OSX is the accessibility and comfort. I do not know any other operating systems that are nearly as enjoyable to work with, as OSX.
And no, I'm not an Apple fanboy. :)