Top Five Best Text Editors for Coding

Top Five Best Text Editors for Coding

Coding

I love the picture above. It’s the stereotypical depiction of what a workstation looks like when someone is lost deep down the hole of a massive breakthrough coding session. While it may look pretty cool, I’m pretty sure that most code writers and developers (those I know anyway) are not using some bright, multi-color text editor that makes your eyes bleed and drains your battery.

There are a good many editors out there that do have some color function to them, which in some cases, comes in handy when quickly searching for specific pieces of code. HTML and CSS can be extremely well searched with these color features. But no matter your preference, whether the good ole black and white, or the more new bedazled editors of today, there is sure to be a text editor that suits your needs.

Today I want to highlight my five favorite text editors for coding. From the basic, to the more advanced, a good text editor is the backbone of development coding. Even when using an IDE of some kind, I prefer to edit in a text editor, then copy and paste. Do note that all of the editors listed below are available on multiple OS platforms, and are all open-source or freeware. So without further ado, here are my top five favorite text editors for coding.

5) Notepad++

Coding with Notepadd++

This is like, the standard editor that everyone starts out with. But its use is not to be made light fun of. I have used Notepad++ for various coding projects, across multiple OS platforms, and it has never let me down. It is my go to editor for HTML, PHP, and CSS. I haven’t worked on a website yet that didn’t involve the use of Notepad++. It is a major step above the piece of garbage that Windows calls a Notepad, and it won’t give you nearly the headaches with encoding. You can learn more about it and download it right here.

4) VIM Text Editor

Coding in VIM

At first glance, some people might think they are having a flashback to the early Windows, late MS-DOS era. But no, this would not be it. Rather, this is VIM. THE text editor. This is a no frills kind of text editor based on the Vi text editor in UNIX systems. Syntax highlighting and color options, but that’s close to it. This is for people who don’t want distractions with coding. I’ll admit, I don’t have that much experience with VIM yet and have only used it on very rare occasions. Like, learning to automate Windows PowerShell stuff. But that’s it. The cool thing about VIM is that it is what they call charityware. Meaning, it’s free to distribute, but they do ask a contribution to ICCF Holland Foundation, helping children in Uganda. Click here to learn more about VIM and download it for yourself.

3) Light Table

Okay, what you’re seeing above is a little more advanced than what I use a text editor for when coding, but this is pretty cool and why I decided to add it to this list. I have just downloaded this in the last 48 hours and played around a bit with it. Using different little patches of code that you can find around the web, I was able to open up almost a “live viewer” of what I had in the editor. Light Table is a relative newcomer to the market, and bills itself more like an IDE than a text editor. Though it’s easy to see how it can be setup for both. Aside from the kind of “default” dark mode kind of look to it (that in my opinion is simply becoming obnoxious), Light Table is a nice little refresh of the standard coding editor. The documentation on Light Table is still kind of young, but I had no problems getting it up and running at least preliminarily. Check it out and grab the download here.

2) Brackets

Coding the Web with Brackets

Considering most of the coding I do on a regular basis is web page based, it was only natural to include Brackets. While not that much different from most text editors, this one stands apart as it is geared towards web developers. With autoprefixer capability, Git integration, and Emmet plugin support, this blazing fast lightweight editor is everything that a web dev needs. Check it out and download it for yourself here.

And finally… My number one pick for best text editor for coding purposes:

1) Atom

Coding with Atom

Hands down my favorite text editor to date. Atom is brought to you by the same brilliant minds behind Github. Lightweight but extensive if you want it to be. It supports a huge variety of different programming languages, and if the one you need isn’t on there, you can almost guarantee there is a plugin to make it compatible. Not only does it have a repository of packages, but you can build your own right there in the editor. Multiple panes allow for modifying multiple files in a package side by side instead of switching tabs. Running on the Electron platform, it is simply a must have for those who code.

 

And there it is. My list of the top five text editors for coding. Which ones on this list do you like? Which ones do you not? Which one(s) that you think should be on the list? Let me know your thoughts in the comments below!

Seven Outstanding Pi Projects

Seven Outstanding Pi Projects

Raspberry Pi

I asked Twitter the other day what people’s favorite Raspberry Pi projects are. Nobody responded because nobody cares that I’m on the Tweeter, but my sister sent this response.

Funny, that sister of mine is.

Anyway, I ordered a Raspberry Pi 3 Model B from Amazon this week. For those that don’t know, the Raspberry Pi is what they call a Single Board Computer or SBC. Not to be confused with an SBD which is something completely unrelated. I was pretty stoked because the kit was a bargain complete with case, heat sink, Pi, and power supply.

The first Pi product I had was an Orange Pi One that was gifted to me by a friend. However, this particular Orange Pi is very temperamental, and doesn’t like to play fair with the likes of the WiFi adapter, among other things. So it’s been in the drawer of tech stuff in my living room. But I had to make choices: What could I do with these Pi units and make them actually useful?

For the new Raspberry Pi 3, I will turn it into a portable pentesting box. Offensive Security makes images for ARM devices like the Raspberry Pi, so there is official support and an easy to set up process. With the older Orange Pi One, I am planning an interactive family digital calendar using Google Calendar, a web site and server running on the Pi itself, and a homemade frame to keep it all in. I’ll post about it when I get it started. Gotta get supplies first.

During my searches for pi projects, I came across many unique, useful, useless, and otherwise cool ideas. So for today’s listicle, I am bringing you the ___ most outstanding Pi projects out there right now.

Informational Display Calendar

http://imgur.com/gallery/z94Vr

This is the project I am about to embark on with my Orange Pi One. While it’s a different board, it’s still the same concept. Using Google Calendar, and an embedded weather display, and maybe adding local news or school stuff to it. A simple, digital display calendar that can be mounted anywhere in the house and viewed by all. The buttons can be used to cycle months in the calendar, month view to agenda view, or a button combo to reboot or refresh the page. Check out this instructable for more information.

Doorjam: Your Personal Walk In Soundtrack

Pi Project - Doorjam
Doorjam from redpepper-ideas

I have always wanted my own soundtrack to walk around to. I could do this with my phone and hit play on different songs. But that’s just not as cool. Doorjam doesn’t follow you around, but it can announce when you arrive to your office, living room, or local bar. Imagine everyone at the bar having their own song blare on a boombox as they walk in.

This project is a prebuilt Pi project but I’m sure you can make your own with different components that compliment the pi. Either way you go won’t be wrong. Time to walk in with head held high while some NOFX or Dropkick Murphy’s announce your immediate arrival.

 Fisher Price Talking Chatter Smartphone

Who doesn’t remember this classic toy? We’ve probably all played with one (except for those damn millennials unless they got it at a thrift store). Out of all the pi projects I’ve seen so far, this one struck me as the most unique. Think of Alexa meets Fisher Price and everyone can use it. Check out the video posted above to see how it works and how it was made. This may be a future project for me with a cheaper board just because it can be done. And who doesn’t love to hack old toys?

Build a Supercomputer

Pi Project - Super Computer
Picture Credit: Glenn Harris 2012

Now chances are A) You don’t actually have that many Raspberry Pi SBCs and B) You probably don’t have the desire to put this much effort into something. Nonetheless, this is seriously fricking cool. I imagine with enough creativity and know how, you could put this to good use. I’m thinking private server rack or something similar. What adds to this project is the fact the casing is made of Lego!

Solar Powered Web Server

http://imgur.com/NOe2ZdW

Now this dude had an idea. An advantageous idea. And by God, he made it happen. Off the grid, and totally self-contained, this pi project is a solar-powered web server. According to the Reddit post, this project survived some pretty harsh weather with absolutely no down time. The poster, Viko_, said he considered offering local bloggers the web server to host their blogs on. Now, wouldn’t that be a grand idea? For $300 up front, you can create a totally self-sustained web server, and host your site without having to worry about dealing with support (Looking at you GoDaddy). That’s a win if you ask me!

Thermal Printer for the Kitchen

Pi Project Thermal Printer

Wade Wagner should be considered a pi genius. Now, I’m not a huge fan of IoT products, but this might could fly in my house. In a blog post, Wade details how with a little ingenuity and Python scripting, he built a thermal printer. With the help of some useful scripts, this little gadget can be sent a text message to print, pull local weather forecasts, school lunch menus, and much more. I spent over 10 years in the food service industry, but I can honestly say I never had tickets quite as awesome as this!

Piano Stairs

I’m assuming that most of you have seen the movie “Big” starring Tom Hanks. If you haven’t, then you’re probably too young to even remember when SNICK was on Nickelodeon. I resent you for that. If you do remember the movie, then this will probably excite you. With some light sensors, and Arduino and a Raspberry Pi, you too can have that gigantic keyboard you’ve always wanted. I’m seriously giving this some thought. I don’t have stairs in my house, but I’m imagining a pathway in the front or side yard that plays music as you walk along.

That’s all I have for today. What crazy, cool, or outrageous pi projects have you seen or built? Let me know in the comments below!!

Internet of Things and Connected Lives: An Insecure Relationship

Internet of Things and Connected Lives: An Insecure Relationship

Internet of Things

We live in a crazy connected world these days, and the Internet of Things makes it abundantly clear. IoT is probably one of the hottest emerging technology trends right now. Put simply, the Internet of Things is the technology of putting internet connected computer devices into everyday objects. Anything from refrigerators to light bulbs are now being produced with the ability to connect to a network and be controlled remotely.

As far as technology trends go, sales revenue and market value can rise and fall like the tides. This leaves it as no surprised that so many tech manufacturers are trying their best to come up with the next big Internet of Things device. The tech sector expands by leaps every year, so staying on top is a monumental, never ending task. However, as great as being able to control everything (I mean everything) from your phone sounds, there is great security risks involved.

Internet of Things Security in the News

The largest security threat in IoT news recently was the massive DDoS attack on Dyn, a company that provides DNS services to, well, half the country. The targeted devices used in the attack: IP security cameras. There has been the recent disclosure of CIA tools that turned internet of things devices such as smart TVs to spy on American homes. And you can’t say you haven’t seen the stories of baby monitors being hacked and used to listen in and even talk to whoever happens to be in the room.

In an article from Linux Insider, the growth of Linux based malware is discussed. With much of the IoT world in the hands of Linux based controllers, attackers have started focusing their efforts on Linux exploitation. And in a wonderful article on Fast Company, we hear the concerns of Vint Cerf, commonly known as the “Father of the Internet”. Perhaps one of the more subtle, but telling quotes from the article, Vint expresses

“Basically you’re relying on software doing the right things, and if it doesn’t do the right thing, you have very little to say about it. I feel like we’re moving into a kind of fragile future right now that we should be much more thoughtful about improving, that is to say making more robust.”

Internet of Things and the Common Consumer

As technology abounds and our world gets more connected, the common consumer has become more tech savvy than in years past. However, I find that tech savvy and and tech minded tend to be two different things. Basic understanding of your technology makes you tech savvy. A more definitive understanding makes you tech minded.

One thing a lot of common consumers do not realize about IoT devices, is the inherit security risk you bring into your home. In a most basic explanation, every device that ends up connected to your home router is a security risk. This means anything from computers, to cell phones, to connected devices like security cameras, TVs, and other appliances. With each new device introduced, the risk of attack goes up.

Unfortunately, even the most basic of security practices that help protect a home network are not in use by most common consumers. So when they decide to add even more attack points to the home network, it comes as no surprise that IoT products have started to become a favorite target. Your smart home is quickly becoming the smartest botnet in the world, and you don’t even know it. What stops an attacker from using your own appliance against you?

Internet of Things and Health Technology

This is a really scary talking point. Not only have we invited inter-connectivity into our normal home lives, but we have also invited it into our health decisions. Modern hospitals, and medical practices with recent equipment upgrades now have connected devices. IV pumps, insulin pumps, oxygen apparatus, the list goes on. Everything in the medical community is being connected.

This isn’t the scary part though. Being able to better monitor a hospital ward with a centralized computer system that shows such detail, that’s a great thing. The scary part is that, just like home devices, these new bits of medical genius come with their security flaws. Whether it’s outsider control of the device, to using the network node to get in and steal personal information, the security of such things hasn’t been well thought out with the technology.

The Future of IoT Security

Internet of Things Security

The future of IoT security has to start in the present. It starts with manufacturers being able to quickly resolve current issues and patch vulnerabilities. A quick response is a great way to assure your consumers that you take their security seriously. On the other side of that, security must be part of the end product that is released. Cybersecurity is one of the fastest growing IT fronts, yet too many companies still don’t take it seriously. Manufacturers must take security not just of the present, but of the future seriously when planning and building new products.

For the common consumer, the practices of basic network security should be learned and applied a lot more than they are right now. If you didn’t know that your router can get software upgrades, raise your hand? If you raised your hand, then you have a lot of learning to do. Just like our phones and computers, internet connected devices can and probably will receive updates. The biggest reason for these updates? You guessed it, improving security.

Final Thoughts

Internet of Things is no doubt the future technology that will run our everyday lives. It’s almost the next inevitable step. However, like other technological leaps in the past, IoT doesn’t come without its flaws and concerns. Manufacturers and consumers have to work together to preserve security. Manufacturers have to do their jobs in preventing and maintaining the security of the devices they release. Consumers have to do their part to implement the security basics on these devices and their home network in general.

A connected world with connected lives will not be this terrible thing that the older generations think it will be. It will not be a disillusioned dystopia of tech zombies with no interaction. However, without the proper procedures and practices, we can’t hope to totally eliminate the slight possibility.

 

Bash Commands All Linux Users Should Know

Bash Commands All Linux Users Should Know

Bash Commands

There is an unspoken rule when it comes to learning how to use Linux that you are not a true user until you learn the basics of bash commands. While there are some great GUI applications that can help you work in Linux, bash commands are essential. They can be everything when nothing else works. Over the last few years, my knowledge of Linux has expanded as I tend to run a dual-boot environment on my computers. I’ve used Linux for everything from gaming, to Android development, to penetration testing.

Over numerous years and numerous Linux distributions, I have come to learn the importance of bash commands. Across distributions and versions, it is the one constant. Whether you use Linux at home, or are looking into work that requires knowledge of Linux command line, here are some of the top bash commands every Linux user should know. Of course, the command line doesn’t have to be all business all the time. Check out my other Linux command line post to see some fun things you can do in the terminal.

Basic Bash Commands

sudoRuns commands as root. This means no limitations of permissions. Can only be used when an account has been configured for root access, such as an administrator.

cdChanges the current working directory.

lsLists the contents of a specific directory. If no directory is specified it lists the contents of the current working directory.

killTerminates the process specified in the arguments. Think of it as the “End Task” for Linux.

nanoOpens files in a very basic command terminal text editor.

nano bash text editor
Example of the Nano bash text editor.

System Information Bash Commands

psDisplays information about all of the processes currently running on the machine.

dfDisplays disk usage for the filesystem.

hostnameDisplays the name of the current host system.

uptimeShows how long the system has been running since the last reboot.

systeminfo-bash-commands
Various System Information Bash Commands

Networking Bash Commands

ifconfigDisplays information about network interfaces, their state, IP address, packet count, and more.

tracerouteAttempts to provide information about the routers your connection crosses when reaching a remote machine.

netstatGives information about ongoing connections on the local system and what ports are listening.

curl ifconfig.meShows the machines external IP address. Like using WhatIsMyIp in the terminal.

netstat-bash-command
Example output from netstat bash command.

File Manipulation Bash Commands

chmod or chownAllows for changing file permissions and owners.

grepSearches through specified file location for files that contain a specified string in the arguments.

mkdirCreates a new directory or rmdir removes a directory.

cpCopies files or directories to a new location or mv moves files to a different directory.

touchCreates a new file in the current working directory.

ddConvert and copy a file.

grep-bash-command
Grep bash command arguments and parameters.

Miscellaneous Bash Commands

manGiving another bash command as an argument, man (short for manual) gives more details about the command you are trying to use.

clearClears the terminal and resets the prompt to the top line. Very useful when the terminal screen becomes clogged.

mount / unmountUsed to mount filesystems. Particularly useful for SD Cards, USB drives, and external optical and storage drives.

passwdAs you might have guessed, this command allows you to change your user password.

historyLists previous bash commands for the current shell session.

man-bash-command
Man bash command showing options for “touch” command.

 

There you have it. The most basic bash commands that every Linux user should know. What do you think should be added to the list? What are your highest used bash commands? Let me know in the comments below!

Sudo Seriously Fun Linux Command Terminal Packages

Sudo Seriously Fun Linux Command Terminal Packages

Linux

The Linux command terminal is key to the use of Linux. Some operating system versions (mostly server applications) run nothing but a command line. No GUI, no buttons to just click and make things happen. Even with a graphical version of a Linux operating system, the command line is a key tool. From upgrading applications or security packages, to running certain commands for administration purposes, or automating processes. Linux command terminal knowledge is a must for a Linux user.

The Linux operating system has been around for quite some time. Like, 26 years and counting. Based on UNIX, Linux is an open source operating system that comes in the form of “flavors” or different community made distributions. Arch, Mint, Ubuntu, Debian, just to name a few, help to make Linux one of the most popular operating systems in the world. There are a lot of things that run on Linux, or systems based on Linux. Android, Roku, The New York Stock Exchange, and even NASA’s Jet Propulsion Lab all run Linux systems.

As daunting as it can sound, the command terminal doesn’t have to be all business all the time. So today, I want to highlight my top 10 command line packages available for MOST Linux distributions that can give you a fun break throughout your day. Just a note: I tested all of these before posting to make sure they all still functioned. These were tested in the latest version of Kali Linux, and I cannot guarantee they will work on ALL distributions. That being said, let’s get on with the show!

 

1. Espeak

Espeak is a multi-lingual text to speech synthesizer that runs in the command terminal. Obviously, I can’t really show you what it does here in writing, but imagine Stephen Hawking singing you a lullaby. That’s what it’s like to use espeak. It’s a simple command with basic parameters that will speak anything you put in quotes. And I mean anything. It accepts certain arguments that allow you to control the pitch, speed of speaking, pause between words and more. It’s easy to get. First you just have to install it, then run it.

sudo apt-get install espeak

and then

espeak [arguments] "What you want it to say".

Example:

espeak -v en -s 200 "I just farted"

2. Cmatrix

You guessed it, this does exactly what it sounds like.

Cmatrix

This little package allows you to make your terminal look like the scrolling screens in The Matrix movies. This fun little command line toy has quite of few different arguments it accepts to make the scroll act differently. Different colors, different speeds, fonts, and even the option to make it run in screensaver mode. I tricked my son earlier today with this and told him I thought I had broken the computer. If you run Linux around a bunch of people who are not tech savvy at all, this will make it look like you perform wizardry with your laptop.

sudo apt-get install cmatrix

and then

cmatrix [arguments]

For example:

cmatrix -a -B -l -s -C white

3. Rig

This one seems kind of pointless but if you run it right, it can look like you just accessed a data dump of names and addresses.

Rig Linux Command Line

Again, this is probably a pretty pointless command line tool and we all know that the names and addresses are probably completely fake. But there are two fun applications for this. Again, if you are around non-tech people, make them think you are doing something unusual. For added fun, when someone sees it, give them long enough to read an address and then hit CTRL-L to quickly clear your terminal screen The other application is if you work on Linux with this kind of information, quickly fool your boss into thinking you are hard at work while you’re really just browsing Facebook.

sudo apt-get install rig

and then

rig [arguments]

For example:

rig -c 10

4. Asciiviewer

Now this is actually a fun one. I mean, who doesn’t like good ascii art? It’s a hard thing to create by hand (trust me, I’ve tried). But asciiviewer takes care of all that for you. Issue the command and insert the image you want, and BAM out pops the image in ascii art form. Here is the leading image of this post with asciiviewer.

Ascii Viewer

This particular little piece of command line tomfoolery doesn’t take any arguments. As far as I can tell, there aren’t a lot of picture types that it will except, but your basic PNG and JPG images will work just fine.

sudo apt-get install aview

and then

asciiviewer [your image here]

6. Cowsay

This is probably one of the best known little pieces of fun in the Linux terminal. Though, I had to do a few things to get it running on my machine, most of the time it runs without issue. This little package makes a cow pop up when you give the right command and it speaks whatever you type in a speech bubble.

Cowsay

Cowsay comes with a lot of different characters that you can have say what you want including a bunny, duck, Beavis, Calvin from Calvin and Hobbes, stegosaurus, Stimpy, and a lot more. Fun to leave up if you leave your terminal open and are gone for a little bit. Which could be bad if anyone else knows what cowsay is and decides to have fun while you’re gone.

sudo apt-get install cowsay

and then

cowsay -f [character file you want to use] "[your phrase here]"

For example:

cowsay -f sheep "Beep. Beep. I'm a sheep."

7. Figlet

This is another one of the most well-known command line goodies available for Linux. Have you ever wondered how it is that people get an ascii banner across the top of their terminal window in Linux? It’s probably done with adding a figlet command to the bashrc file. Like so:

Figlet

Figlet comes with a lot of different fonts that can be used and downloaded to use with it. Just another fun little display type deal to waste your time with, or use in scripts to make them a little more presentable when they run.

sudo apt-get install figlet

and then

figlet -f [font you want to use] "[your phrase]"

For example:

figlet -f banner3 "Welcome to The Terminal"

8. Yes – The Loop that Never Ends

This one is almost as pointless as rig, but it is entertaining. Basically, you type yes and then some phrase. After that, it just keeps printing it in the terminal over and over and over. Yup, as I said before, it’s pointless, but fun.

Yes

And there you have it.

sudo apt-get install yes

and then

yes [your phrase]

For example:

yes "We have no bananas."

9. Rev

Have you caught on yet that a lot of these are just utterly pointless, yet, when you start using them it’s hard to tear yourself away? Well, introduce to this list, rev, which reverses what you type until you CTRL-C out of it. Which is kind of fun. Especially if you’re one of those people who knows how to make dirty words by writing out numbers backwards or something like that. Here’s me playing with it on my machine. The horribly highlighted lines are my input.

Rev

I told you it was horribly highlighted. It could be fun just to mess with people’s heads, but really, there is no use for having the terminal output what you type, except backwards. But either way, here it is.

The rev command is part of the util-linux package and is available from Linux Kernel Archive.

rev [input]

For example:

rev racecar

or

rev /root/desktop/listofpalindromes.txt

10. Let’s Watch Star Wars

Okay, so this isn’t so much of a command line package that you can download, rather, it’s a geeky little fun thing that you can do. This particular goody uses telnet to operate. Created by Simon Jansen, Sten Spans, and Mike Edwards, this is ascii brilliance. Yes, it’s Star Wars Episdoe IV, in ascii art, viewed through the telnet protocol in a command terminal. Need I say more about it?

Telnet Star Wars

Telnet Star Wars

It truly is a piece of genius, and the guys behind it deserve every beer they could possibly be bought for this. If you really want to waste some time in a Linux command terminal then this is for you.

telnet towel.blinkenlights.nl

And there you have it. My top 10 favorite Linux command terminal packages. Have any neat, fun goodies that you like to use in Linux? Let me know in the comments below!