Hey fellas.

I've been using Windows as my main OS since I sat on an PC with win 95. Now I think is time to finally change to Linux!

The main reason I didn't change sooner was because the .NET dev env, but now there's Mono.

So, I really would like some suggestion about what distro and desktop interface to use.

What do I use PCs for:

  • Web Dev (.NET, PHP)
  • Android Dev
  • DataBase Managing (MySQL & SQL Server)
  • Little Bit of Design(Photo edit, vectors and very little movie editing)
  • CS GO (Steam Game)
  • Security Tests (With Kali)
  • Basic Stuff (Web,Docs,Music,Movie,Pics...)

I've been playing with distros on virtual boxes and pen drivers for a while, including Ubuntu, Debian, BackTrack, Kali, SlackWare and Mint.

I don't like dual boot too much, so the most important question, do you guys think I would be OK with Linux as my main OS using virtual box or wine for a few things(like SQL Server Management Studio) ?

If yes, what distro and desktop do you recommend?

Any other tips, remarks or suggestions are welcome.

Oh, also would like to confirm somehting... If I choose Debian, can I get any functionallity on Kali just by installing the packages needed, right?


I would suggest for you to try Arch, it only includes the essentials and you could customize it to your liking. You could try the xfce desktop environment. Yes you should not dual boot; here is why: https://www.youtube.com/watch?v=j9iX2qSfMhE . I don't know about .NET. Android runs on Linux. Here is a nice article on SQL Server on Linux: https://blogs.microsoft.com/blog/2016/03/07/announcing-sql-server-on-linux/ . You can edit photos with GIMP, create vector with Inkscape and edit videos with KDEnlive. CS GO works on Steam on Linux. You can do basic stuff with LibreOffice, Evince, Mplayer, VLC, Feh... I think that you should just install Kali on a separate machine. What I use wine for now is just for Unity game engine and that's it.

commented: Thanks! Really usefull! +10

Start with a Linux virtual machine. Install VirtualBox on your Win7 system and create a Linux virtual machine. That way, you can experiment with a number of different distributions until you find one that you prefer. You can also use them to learn how to use the OS.

commented: I like a test drive. +8

Another possibility is to build a liveCD on an external haard drive. I did this with kubuntu and picked the option to allow perseverence (so I could install apps, make changes, etc.). You can boot into the liveCD and pick the "try" instead of "install" option.

Thanks for the input guys, but just to be clear, I've already tested some distros on virtual boxes and USB Sticks, but I've never created, let's say, a complete envirioment.
So i'm looking more for recommendations on distros/packages than on how to test them =)

I've used mostly Debian on vbox to take a look at the deep web with tor, test a little bit of bitcoin and encrypted emails.
I've used a bit of Kali on USB stick to play with HD and Wireless attacks (just playing on my stuff for knowlodge and fun ^^)
And I tested various Mints with different interfaces to feel a little bit of what it's going on.

But there are so many options, many that I probably don't know about, and that's why recommendations from developers that use linux are so important.

Thanks again and have a good day.

At the office we don't try to move entirely to Linux for many reasons. Since we make our bread and butter on being efficient we use the Windows machines for the Windows app development and Linux machines for its development. We did have a fellow that wanted to move entirely over but he became non-productive for a few weeks trying to make the move, missed deadlines and later let go.

Hey, if you want to do this go right ahead but here I've yet to see anyone make the move and still deliver on time with the app tested on Windows etc.

What we do costs very little today. That is we have more than one laptop for the developers. There's the usual servers (on Linux) for revision and source control, but for the time being I've yet to see any developer crack the nut you are going after.

commented: This makes me want it even more! But will keep my current HD intact just in case =) +10

I use Mint and Windows since my job has different requirements. I prefer Mint as my main workstation and I use all the productivity tools there.... libreoffice, thunderbird for Exchange mail/calendar access, Cisco ASA ASDM runs through Java, All web based stuff works fine.

I needed to keep windows in a Virtual box VM for:
Photoshop, Vegas Vid Editing, vSPhere Thick Client, and a handful of other tools that are win only.

It works great for me and that's just my 2 cents.

Thanks guys. I think it's possible to make the move using an Win VM for what anything that isn't going well on linux.
I will even keep my current HD and if needed, could even be run as an VM box also (Really usefull this by the way: http://www.serverwatch.com/server-tutorials/using-a-physical-hard-drive-with-a-virtualbox-vm.html)

@Freshly, I took a look at Arch, but i'm concerned about stability using a rolling distro for a development environment. Don't you get stuck sometimes?

For now i'm thinking going

commented: Interesting link +14

Thanks for the link, I didn't know that. You can perhaps have windows on an external drive and run it in virtualbox. This would be a portable windows.

I like the LTS versions of ubuntu, kubuntu, etc for stability. However, I still need windows now and then because some companies don't have a linux version of their software. For example my Garmin GPS can only be updated in windows or mac.

you know what, Just close your eyes and forget about windows world and back to the homeland UNIX. just do it, I did it. good luck

commented: Go big and go home. +8

Oh boy! I wish I could!
But you know, I still need to maintain an VB.NET using Visual Studio 2008. Can't even update it to newer IDE's because of client restrictions =/
TI on enterprise networks hurts my soul.

But I just got an new HDD, so this weekend I begin building my Linx Dev Env =) Wish me luuuuuck ^^

I'm gonna start with Debian for now, i'm concered with Arch stability.
Thanks all for the inputs.
I'm just gonna leave this open for a while, so I can post the results back to you.

Wish a happy holliday to you all!

Hello, you say you are a newbie, so I recommend to use Ubuntu and Unity or Gnome Desktop environment for it's easy and very UX oriented.

Web Dev (.NET, PHP) -> Apache or Nginx as server and PHPStorm,
Android Dev -> Android Studio
DataBase Managing (MySQL & SQL Server) -> Install the mysql package and to manage Valentina Studio
Little Bit of Design(Photo edit, vectors and very little movie editing) -> Gimp and Inkscape

Since Kali is based on Debian Wheezy , you can get anything for Kali from the Debian repository.
I'd suggest you get a fair size flashdrive ( I have a 16 GB) and install Debian on it and set up Persistence and not on your HDD just in case Debian doesn't live up to your expectations.

My personal systems are all running Linux. Windows stuff I can't run there (with Wine, etc) I run in a Windows VM (using VirtualBox). That has been good for me. At work, all of our software development is on Linux, in VMware virtual machines, but our office stuff (email, etc) is on Windows. Our laptops run Windows 7 or 10, but our development systems are either Linux VM's or Windows Servers also on VM's.

I have been on Linux for 3 months now and it's not too bad I am getting used to it, but I would also stick to Windows 10 on another PC just so I can iron out all those bugs.

Man! It was going well, had web env for php/mysql runing with my projects already, had already installed vbox with an Win10 image for testing, until...I tried to install team viewer.

Don't know what happen, but it started removing all packages, including gnome, and ctrl+c didn't stop it, and I was wataching all go away helpless!!

Any ideas why this happened? I used gdebi to install the packaged downloaded from the team viewer site.
Could it be that TV uses another UI than gnome and tried to force it up my system?

No worries tho, from command line I could check that the personal files were still intact, so i'm justing reinstalling the gnome interface and hopping for the best.

This adventure has lots of learning.

Lesson #1 - never overreact.
Lesson #2 - do a root-cause analysis of your problem(s).
Lesson #3 - go to lesson #1...

I use Windows when I absolutely have to. Example, if I have to develop software that must run in a Windows-only environment, then I run a Windows environment in a virtual machine, otherwise I run Linux exclusively. It is MUCH more forgiving than Windows, and with Wine, I can run 98% of any needed Windows software (including my high-end software engineering tools) without resorting to a VM.

@Freshly, I took a look at Arch, but i'm concerned about stability using a rolling distro for a development environment. Don't you get stuck sometimes?

Here is a FAQ related to your concern: Is Arch Linux a stable distribution? Will I get frequent breakage? Yes it's a rolling distro so I roll with it with sudo pacman -Syu. Let's say I have an existing installation of Arch Linux and a new release comes out, then using that command updates and upgrades it to the new release. That's how it works. I don't remember getting stuck.

@Freshly, thanks, i'll definaltly try Arch someday, but for now Debian is being great for me to get the hang of the linux world =)

I did the move! It's been two weeks and I'm loving it! Nothing to complain comparing to windows and loooots to congratulate!

Easy dual monitor with multiple desktops, dual audio, full smoth dark screen(had to tweak a little but i'd never would have gotten this kind of beuty with windows - even skype respect QT Settings!!).

I'm using Debian 8 with Gnome 3 (installed xfce also, but didn't use much yet) and till now there was nothing that i wanted and didn't found!

And Oh boy, how I love the terminal! I had such a hard time on windows creating custom commands and named shortcuts(for running with <Super>+R), and now i can just nano /usr/bin/mylove and write something up!

Oh, and grep, i need to learn it so badly! It's awesome!

Just to get more confortable, binded super+E to nautilus and super+R to the run dialog and I feel at home!

I just can't say about the .NET development and gaming yet, because did neither of those yet. I left my work notebook intact to continue the clients projects until it's all smooth on here.

And now I realised that i need to learn c and c++ if i wanna help or tweak some sources.
I know veeeeery little about both, basically cause i've skipped college, so, any suggetions on how I should get started?

Thanks all for the support, it's being great!

Pics or it didn't happen?? =P

Ps.: to be honest, i could not set one wallpaper per monitor yet! but i'll try more some day ^^

Wow, I'm late to the party - just got informed about this from the Digest. I made the switch from Windows 7 at work and at home over to Scientific linux 7 because that's the Linux we use at my work. For those who are worried about stability, it also is a good option because it's derived from RHEL, and so really doesn't change very much. With v7 though, a lot of newer "stuff" can work compared to historical RHEL - SCL or pyenv for newer python, NUX and EPEL have A LOT of newer 3rd party desktop stuff. I went Crossover though for my "Wine" experience, I get to support the development for not a lot of money, and get some tech support if needed. That's been pretty good, I've been able to run my AutoIT environment there for my Windows scripting. The main use for Windows now for me is via SMB + SSH to build Chocolatey packages via powershell. If someone out there built a linux "cpack" function I would only use Windows for debugging our desktop environment.

I have to say, I've been pretty happy. I tried in the past to migrate, but the desktops weren't there for me at that time. Now it's at the 95% level, which given the crap with Windows > 7, I'm willing to give up that 5%. XFCE was easy for me to install and configure to be very like Win XP Classic UI, which was my favorite.

I was able to find pretty close equivalents to many of my programs, or because I was cheap on Windows too and used a lot of FLOSS, directly run the Linux versions of Firefox, Libreoffice, GNUCash, Pidgin, Gepetto etc... Mono runs Keepass for instance, and I found "good enough" drivers for my hardware. I did lose color on my ancient color laser Samsung printer (2006 era) but I also use it more as a table than a printer so . . .

The big thing that really made it easy for me is back in XP days I got so tired of games screwing up my Windows computer affecting my ability to do "computer" things, I decided to stop mucking up my main PC. Well - I never did get a separate gaming PC, instead picking up a PS3 and now PS4 to game on. Games are actually one place I like the "walled garden" approach - I've seen way too many games that just do crappy stuff either for copy protection or just rushed and bad coding or that just conflicted with tools like my ISO Mounter or whatever that I'm happy to make it "somebody else's problem" on the console. If a game doesn't work on the console it's sold for, I don't really have to debug or "prove it's their problem". Actually, I've never had a game not "just work" on a console. With cheap mobile also gaining a lot of ground I'm really not missing Windows games. And Steam is doing a lot for bringing some to Linux if I cared.

I've also noticed for a long time that because FLOSS doesn't care about copy protection, and usually isn't pressed to "make a deadline", there's less stupid problems with big project software. Oh, there's plenty of bugs, but they're bugs, not "fight the consumer" design decisions. And any time someone get's too caught up in "New Shiny" like GNOME3 or modern GEdit, there's a fork of the "sane" UI version you can switch to such as Pluma . . .

The other awesome thing is you can mix and match your desktop environment to fit YOU. So I run XFCE, but have Pluma for text editing (from GNOME), Konsole for terminal from KDE and Thunar for file management from XFCE. They all seem fine. Oh, and virtual desktops? I'm sorry I missed them so long in Windows (I understand they are there in Win 10)... These workspaces are really useful.

It's definitely possible to switch to Linux now.

commented: Gonna try lots of things from here! =) +10

Computers are relatively inexpensive nowadays; perhaps you could purchase one for around $300 - $400 and use that as your Linux computer. It is about the same cost as registering for a night-school course at a local college. We can speculate all we want about what might happen, but you won't know for sure until you try it. And having a totally separate computer will save you a lot of headache if things go wrong. In fact, a basic install doesn't even need a top-of-the-line computer; I have known some people to find old computers/laptops that were being given away by colleagues or sold cheap on Craigslist. They would wipe them clean and then use those as their Linux box. Linux doesn't need a lot of GB or GHz to learn it. Make some inquiries. Everybody knows somebody who is upgrading their computer and throwing out their old one.

@DavidB, unfortunally that's not true for every country. You can't buy a new pc under R$ 1.000,00 in Brazil, and if you want anything with 4gb or more of ram then it's going up to at least R$ 1.500,00. And so you can compare, that's 2 times the minimum wage here.

An 1TB HDD costs about R$ 400,00 here, so buying new pcs for testing software is not an option for the majority.

But again, the thread is not about how to test distros, I was asking option about distro and packages =)

Thanks for the reply ntl ^^

Personally, I cut over to Linux Mint several years ago. When WinXP support sunsetted, I didn't have the cash to get a new machine to run Win7, and I thought my old Dell Dimension (maxed out at 2Gb of memory) still had some life. So I just took a deep breath and dove in.

But, with great flexibility comes great complexity. It helps (as it helped me) that you have actual WORK that you do on your machine, rather than just being a web-surfer/emailer/facebooker. That forces you to figure out how to do stuff that's much more "casual-user-friendly" under Windows.

I prefer the Mate UI (pronounced "Mah-Tay" according to the documentation) over the Cinnamon UI, but that's because that first machine I cut over didn't have the graphics horsepower to support Cinnamon. I even started writing a book (working title, "Jumping Out of Windows") to document my trials and tribulations. But enough about me.

I'm actually responding to your mention of learning C to do tweaks. I highly recommend that you visit the web site http://c.learncodethehardway.org/book/ for the free e-book "Learn C the Hard Way". It does require some time and effort, but I found it well worth it.

Good fortune to you, and Happy Coding!

commented: Amazing! Thank you very much! +10