# Why Linux OS is prefered by Developers ?



## ariftwister (Apr 23, 2014)

So What are the advantages of using Linux from a developer point of view and What drawbacks of using Windows for Android development ?


----------



## arnabbiswasalsodeep (Apr 23, 2014)

Advantages of Linux
1. Open source
2. Runs apps more natively
3. Supports a vast range of compilers
4. Hierarchical file architecture
5. No need to set the compiler paths (like C:/pro..... , all are in same path,  even the apps)

Disadvantages of windows
1.The opposite of Linux advantages
2. Can't run shell commands
3. Poor terminal
4. Most file extensions not supported natively (have to use different apps)
5. Supports old file system NTFS that requires defragmentation and supports only some file systems


---***Update***---
Android is Linux but with  little differences
Both are nearly the same so obviously it will provide a better support

More advantages (necessary!!)
6. CaSe sEnSeTiVe
7. Permission management!!


----------



## tkin (Apr 23, 2014)

I'm not sure, I'm a developer and I use windows extensively. For starters .Net will require windows, so no linux for .Net devs. I work on spring/j2ee and as such the ide(eclipse), server(tomcat or vmware vfabric) works great with windows. Ofcourse I had never made end user standalone apps, I work on custom enterprise apps only.


----------



## arnabbiswasalsodeep (Apr 23, 2014)

^^^
He wants for Android development
That's why I didn't mention that


----------



## ithehappy (Apr 23, 2014)

I respect some developers, but most are crazy, and as well as Linux, so that's the reason I think?


----------



## krishnandu.sarkar (Apr 23, 2014)

Well as already said, it's Open Source, it's Free and it's Fun 

I'm also a .NET Developer by profession so I'm bound to use Windows, but in home I use dual boot with Linux. I generally boot into Windows when I have some real work to do, else I'm always logged in to Linux


----------



## ariftwister (Apr 24, 2014)

So that's decided, So I guess I have to use both.


----------



## ariftwister (Apr 24, 2014)

The android emulator lags heavily in Windows. Will it run smoothly on Linux!?


----------



## ariftwister (Apr 24, 2014)

whatthefrak said:


> I respect some developers, but most are crazy, and as well as Linux, so that's the reason I think?



You mean android developers?  Or just random developers?

Btw I have huge respect for developers, because they code hundreds of pages of code and understand the logic behind it...


----------



## ariftwister (Apr 24, 2014)

krishnandu.sarkar said:


> Well as already said, it's Open Source, it's Free and it's Fun



Only the OS is free or all s/w free?


----------



## ariftwister (Apr 24, 2014)

arnabbiswasalsodeep said:


> More advantages (necessary!!)
> 6. CaSe sEnSeTiVe
> 7. Permission management!!


Thanks for the elaborate reply.

I thought windows also case sensitive. Isn't it?


----------



## SaiyanGoku (Apr 24, 2014)

Open source means that the source code of the software is free to be download, modified or re released for non profit purpose.

Linux OS's do have some paid applications.



ariftwister said:


> The android emulator lags heavily in Windows. Will it run smoothly on Linux!?



it depends, if you system doesn't have enough resources (cpu/ram) for the virtual machine, it will always lag be it windows or Linux. generally linux os's use lesser ram compared to windows. (in my case, Linux mint 15 mate used ~250 MB RAM on startup and windows 7 ~450MB)


----------



## ithehappy (Apr 24, 2014)

ariftwister said:


> You mean android developers?  Or just random developers?
> 
> Btw I have huge respect for developers, because they code hundreds of pages of code and understand the logic behind it...


Only Android man, only Android.


----------



## dashing.sujay (Apr 24, 2014)

ariftwister said:


> Thanks for the elaborate reply.
> 
> I thought windows also case sensitive. Isn't it?



Nope.


----------



## cute.bandar (Apr 24, 2014)

I personally find only a couple  of good things in linux from the point of view of development - 

Awesome command line and package managers.


----------



## arnabbiswasalsodeep (Apr 25, 2014)

And my slow, sluggish lagging windows PC works great with linux
only problem is that you have to mount the devices first to use and input password every time you use sudo command (talking about Ubuntu)
And
Windows aint case sensetive, or has case management but not sensitive like Linux
Also the text editor itself is sufficient in Linux and no need to download notepad++ or something else

And [MENTION=255169]whatthefrak[/MENTION]
I guess you're right. I am mad to a certain level but sometimes lose control (i dont give a $#!t about warranty, just wanna root android and brick it!! )


----------



## Neuron (Apr 25, 2014)

Developing android on windows has way more advantages than doing it on a linux platform. For example devices from sony has a connectivity mode called MTP which AFAIK works only on windows.MTP lets the computer and the phone use the sdcard simultaneously. I am developing a small game and sometimes have to render 3d models into a set of images. This would be really slow on linux as i have a not so powerful laptop. Plus I get to run Bluestacks which is very handy in testing games.
Also the emulator isn't going to run any faster on the linux machine. Chances are that it will be slower. You may face problems finding adb drivers for your phone as well.


----------



## arnabbiswasalsodeep (Apr 26, 2014)

Well entirely wrong
For MTP connection, it works on my computer. I just had to connect the phone as MTK while installing the OS. Also rom development doesnt need that cuz u have sideload option available there. For app development windows is good but for rom development it isn't.
Rom development doesnt need bluestacks and if developing for nexus then the emulator in sdk works.
Again the drivers are mostly installed or you can do it manually


----------



## ariftwister (Apr 27, 2014)

arnabbiswasalsodeep said:


> For app development windows is good but for rom development it isn't.



Thanks for clearing...


----------



## Neuron (Apr 27, 2014)

arnabbiswasalsodeep said:


> Well entirely wrong
> For MTP connection, it works on my computer. I just had to connect the phone as MTK while installing the OS. Also rom development doesnt need that cuz u have sideload option available there. For app development windows is good but for rom development it isn't.
> Rom development doesnt need bluestacks and if developing for nexus then the emulator in sdk works.
> Again the drivers are mostly installed or you can do it manually



Entirely wrong? I wasn't talking about MTK. I'm talking about MTP which is a pain to get working on linux. And give me a reason why ROM development is better on linux.


----------



## krishnandu.sarkar (Apr 27, 2014)

Neuron said:


> Entirely wrong? I wasn't talking about MTK. I'm talking about MTP which is a pain to get working on linux. And give me a reason why ROM development is better on linux.



Yeah MTP is a part of Windows Media Framework and has close relationship with Windows Media Player. But now everything works on Linux bro. I can connect my XPeria without any issues, neither I need to install any driver at first place. Nowadays Linux got much improved to detect drivers automatically. If not, there are repository of 1000's. 

Check the below links for MTP & Android Development

*wiki.archlinux.org/index.php/MTP

*wiki.archlinux.org/index.php/android


----------



## arnabbiswasalsodeep (Apr 27, 2014)

Neuron said:


> Entirely wrong? I wasn't talking about MTK. I'm talking about MTP which is a pain to get working on linux. And give me a reason why ROM development is better on linux.



Sorry,  my AUTOCORRECT mistake
It changed mtp to mtk
Sorry for the error (damn you autocorrect!!!)


----------



## Neuron (Apr 27, 2014)

krishnandu.sarkar said:


> Yeah MTP is a part of Windows Media Framework and has close relationship with Windows Media Player. But now everything works on Linux bro. I can connect my XPeria without any issues, neither I need to install any driver at first place. Nowadays Linux got much improved to detect drivers automatically. If not, there are repository of 1000's.
> 
> Check the below links for MTP & Android Development
> 
> ...




Not all devices will get auto detected. Installing the driver manually is a bit difficult in linux unlike in windows for which drivers are readily available. And do explain why linux is better in developing android ROMs.


----------



## krishnandu.sarkar (Apr 27, 2014)

Neuron said:


> Not all devices will get auto detected. Installing the driver manually is a bit difficult in linux unlike in windows for which drivers are readily available. And do explain why linux is better in developing android ROMs.



Well, yes that's correct, installing drivers in linux are not as easy as in windows. But generally people use linux to get the flavor of DIY. It's not as user friendly as windows too. But doing all these (compiling from source etc.) helps you to learn how things works at background. If someone is not intended to learn all these things and is not interested then windows is fine.

Though Ubuntu, Linux Mint have covered much of all these. Chances are 90% of your devices will work without extra hassles on these distros.

Anyway, I didn't commented that "linux is better in developing android ROMs". Though I don't know much about ROM development but I support this statement, because AFAIK you don't need all the hassles of configuring path and all (make etc.) in linux. Android itself is linux. If you develop in windows, you can't do that with TC++. You need MingW (I guess). And you need to have git, make and other utilities installed. I believe some environment exists for things which install everything. All of these aren't necessary in Linux, as these are basics in linux which will be there by default. So basically with the environment installed you run linux commands only.

Correct me if I'm wrong.


----------



## Neuron (Apr 28, 2014)

krishnandu.sarkar said:


> Well, yes that's correct, installing drivers in linux are not as easy as in windows. But generally people use linux to get the flavor of DIY. It's not as user friendly as windows too. But doing all these (compiling from source etc.) helps you to learn how things works at background. If someone is not intended to learn all these things and is not interested then windows is fine.
> 
> Though Ubuntu, Linux Mint have covered much of all these. Chances are 90% of your devices will work without extra hassles on these distros.
> 
> ...



Hey not everyone who wants to develop for android enjoys learning the functioning of linux OS. And about ROMs that was for arnabbiswas. BTW configuring paths can be done in seconds. And to develop ROMs you have to downloads additional utilities in both windows and linux. But installing additional stuff is not really a concern, their availability is.


----------



## TheSloth (Apr 28, 2014)

Ok I heard two times now, "android is linux". What and how?
I thought android is closely related to java. And linux is written on c++. Someone from other thread said me "half knowledge is very dangerous", so help me here.


----------



## SaiyanGoku (Apr 28, 2014)

Android users Linux based kernel and requires a java based virtual machine called as dalvik to compile (during execution) and run apps, which is thus relatively slower. With android KitKat, another runtime known as art is introduced which precompiles the apps, resulting in increased performance. Though the precompiled apps take more space.


----------



## krishnandu.sarkar (Apr 28, 2014)

Neuron said:


> Hey not everyone who wants to develop for android enjoys learning the functioning of linux OS. And about ROMs that was for arnabbiswas. BTW configuring paths can be done in seconds. And to develop ROMs you have to downloads additional utilities in both windows and linux. But installing additional stuff is not really a concern, their availability is.



That's what I said. Not everyone wants to RnD and enjoys the same. But nowadays almost everything that's available on Windows is available on Linux too (atleast alternatives exists). For games, linux have it's own games and now also so called hi-end games is also making it's way via steam. Though this may take another year or two.


----------



## a_k_s_h_a_y (May 14, 2014)

they don't, most development is done on Windows because its Windows which is the dominant platform still..
app development investment is still a tiny fraction of what's spent on windows..
i work at adobe, my friends at micrsoft, google, infosys, wipro.. i know.... don't throw some open source linux bs..


----------



## arnabbiswasalsodeep (May 14, 2014)

a_k_s_h_a_y said:


> they don't, most development is done on Windows because its Windows which is the dominant platform still..
> app development investment is still a tiny fraction of what's spent on windows..
> i work at adobe, my friends at micrsoft, google, infosys, wipro.. i know.... don't throw some open source linux bs..



Well I can say that most app developers use a pirated version of windoes

And WOAH! where you and your friends work? You are awesome!
Leaving that besides the companies use windows because nearly all people who have used a computer know only the windows OS and Linux will pose a problem and windows offer best services for business so ultimately windows will be preferred


----------



## Desmond (May 14, 2014)

tkin said:


> I'm not sure, I'm a developer and I use windows extensively. For starters *.Net will require windows, so no linux for .Net devs*. I work on spring/j2ee and as such the ide(eclipse), server(tomcat or vmware vfabric) works great with windows. Ofcourse I had never made end user standalone apps, I work on custom enterprise apps only.



You've probably never heard of Mono.


----------



## a_k_s_h_a_y (May 14, 2014)

arnabbiswasalsodeep said:


> Well I can say that most app developers use a pirated version of windoes



Very wrong, many indie developers who plan to go big, startup or entrepreneurs don't use pirated software.
Corps, schools, organizations strictly don't use pirated software.
In fact Indies pay for their entire toolchain.
Its only the casual developer for learning purpose may use pirated software.

PCs, Laptops from hp, dell, toshiba etc come with licensed Windows usually!

Again how Do I know this about indie developers ? Well as a developer myself, I meet fellow developers at conferences.. not just in india btw . We discuss things. Everyone pays licensing costs. My friends used to ask me to buy them discounted photoshop... but now with everything going subscription, developers are preferring renting it when required in the development cycle.

- - - Updated - - -



ariftwister said:


> So that's decided, So I guess I have to use both.



Yes, this is it, you have to invest everywhere! Mac for iOS, Windows, Linux if you want to make linux apps.. 
Android development, you can develop in Windows and test on Android device.


----------



## naveenvishwa (May 14, 2014)

I agree  with all above statements...


----------



## krishnandu.sarkar (May 14, 2014)

DeSmOnD dAvId said:


> You've probably never heard of Mono.



Well, that's not at all considered for main stream development and hosting. Atleast I never heard anyone who develops on .NET uses Mono on Linux for hosting his ASP.NET website.

- - - Updated - - -



a_k_s_h_a_y said:


> Corps, schools, organizations strictly don't use pirated software.



Max colleges and schools even small organizations use pirated Windows. I have seen that myself.


----------



## a_k_s_h_a_y (May 14, 2014)

krishnandu.sarkar said:


> Max colleges and schools even small organizations use pirated Windows. I have seen that myself.



Ok, I sort of agree on this, may be in India many schools use pirated windows.
however this wasn't the case at my college, they buy PCs from HP.. which came with licensed windows... 
small businesses I have seen, use genuine.. i mean serious guys.. who make more than 1 crore types..

well the photo sutdio next door doesn't though..
but a serious high end wedding photographer who earns lakhs uses genunie stuff.


----------



## krishnandu.sarkar (May 14, 2014)

a_k_s_h_a_y said:


> Ok, I sort of agree on this, may be in India many schools use pirated windows.
> however this wasn't the case at my college, they buy PCs from HP.. which came with licensed windows...
> small businesses I have seen, use genuine.. i mean serious guys.. who make more than 1 crore types..
> 
> ...



Anyway, I believe that depends on the person / oraganization.


----------

