A common saying around the Linux community is that it is less likely you will get a virus. Some people even claim you can’t get any, but I think most Linux users know viruses/malware/nasty stuff do exist for Linux and we need to be security minded just like any other computer user regardless of software running on the machine. One major problem I think some times people forget about is this awesome yet dangerous program called Wine. It is a combatability layer that doesn’t have any sandboxing at all. If it works on Windows you just opened yourself up to a much wider variety of issues. The vast majority of desktop users are OSX and Windows users so this can keep us little Linux guys some what safe just because it serves little purpose to target us. As Linux matures on the desktop and gains more adoption I think we need to start taking a look at what this attack vector could mean and how we could help users by limiting exposure.
Here is an interesting Ubuntu forum post I found while researching I thought everyone reading might get a kick out of it and prove some what educational. It is a little old, but still fun. Have a read – http://ubuntuforums.org/showthread.php?t=72598
If you have any ideas how people should protect themselves while still using Wine please comment below, or send me an email.
For some reason over the years people have moved more and more to editors like Sublime Text, Atom, and even PHP Storm. One thing I think is strange is we already have great IDEs specifically made for programming and yet people want to use other editors. No doubt about it Sublime Text is light and fast, but on my system I have no issues starting up Netbeans and using it all day. It rarely crashes and has far less external dependencies that can be quite cumbersome to deal with at times. First off I am one of those ethical people that tend to lean on the open source side. I don’t mind using closed software at times, but I definitely have different drives that run my closed software and another drive that runs my open stuff. I usually use my open drive 99% of the time and then occasional use Windows when needed. So with this in mind I don’t really like to use Sublime Text for that reason. I didn’t rule it out as a possibility though. I wanted to use it so I went to the forum and asked the community/developers if a external security audit had been done and asked about their collection and privacy options. One thing that I find closed source software tends to do is collect data on the user and offer the option to turn these functionality off, but not advertise the feature. Here is a link to my question – http://www.sublimetext.com/forum/viewtopic.php?f=2&t=14927
Unfortunately they didn’t say anything I wanted to hear so I ruled it out as an option. The next thing I tried was the Atom editor. It is open source and created by the people that made Git Hub at least partially along with Chromium/Electron. It was pretty fast for being written in HTML/JS partially and has a lot of options for packages. One thing I ran into when using it was I constantly ran into issues with these packages. More often then not one would always stop me in my tracks while working. I would wake up in the morning start Atom up and bam an update would download. This was fine I always want the latest fixes and features, but this always causes problems with my packages. I either need to disable the package and fine something else that is similar and set that up. I would then go back and forth between disabling one and enabling another all while making sure configurations still worked. Eventually I just got tired of it. I posted a few times telling them some features just need to be included into the editor. They claim it is just an editor so that eliminates the requirement for them to maintain additional features, but lets be honest. It is a editor meant for programmers. So here is the crux of the issue.
PHP Storm on the other hand is reportedly great, but has a lot of quirks I find strange when comparing them to real IDEs. First why would anyone use PHPStorm over Netbeans which has had the same features as PHP Storm for at least 5 years before it was even developed. It makes me wonder are developers so accustom to fast past movement they become silly hipsters that are always looking for the next trend rather then just using what works. This can really be bad for new developers and always makes strange camps that get very religious about things. PHP Storm is a good option, but again not open and no security audit.
All these editors that market themselves as light and speedy don’t really help programmers in several ways.
- When you can’t trust it. Either closed source, or no actual external security audit.
- Off loads required features to third parties and scripters.
- Breaks their own packages with updates.
- Many packages that have little performance tuning when paired with other features.
- Very little interoperability between packages.
- Time wasted trying to maintain packages people maintain that are free as in beer so you have no assurance it will be maintained in the long run.
Just to bring this up in closing here. PHP Storm also has a older brother that is open and more mature. We could even throw Eclipse into the mix all of which are written for the most part in Java so it isn’t like you have speed improvements by using something else. I would love to have some better options if they exist, but in my experience Netbeans just does all the things I want and does them simply. It is integrated and is open. They support my development on the mainline so I know the features are top priority and they aren’t going to change. I can rely on the very simply functionality I require as a web and desktop developer and it is open and free enough mature and slow moving add-ons can be added without much fuss.
Just to leave a little wiggle room here I would say some instances may exist where you need to be super close to the edge and need some fast prototyping editor, but for steady stable development it is to much a hassle and a worry for me.
I personally think Atom is a great editor and could be something to use in the future, but it is going to need at least another year before it is reliable enough for me to use it on a daily basis. For now I will have to stick to Netbeans. I know how people feel about Oracle, but so far MySQL Workbench has been improving over the years and so has Netbeans. Anyway just felt like writing. Hope some one finds this useful.