Can someone help me decide where to focus my energy (programming related)

Full disclosure - I like PHP and Ruby, equally.

I’d say I can “hack it” with either language, but I’d really like to become an expert in one of those.

Essentially I’d like one language as my main “go to” for my day to day general hackery. And since most languages can do most of anything today - I’d be interested in getting consulting on which might be best for me.

Any advice? Happy to answer questions if that can help us zero in.

Thanks!

I guess PHP since it’s used on the web more than Ruby.

Maybe pick up another language? (I know you know Perl and a couple others too)

3 Likes

I have been very impressed with go. It may supplant PHP in the end.

Laravel is not a completely terrible framework. I get what they are doing with Drupal 8, but it disappoints me.

4 Likes

PHP: The lovechild of C++ and PERL

1 Like

What could possibly go wrong

Go’s mostly been a Python replacement for me (and then some).

first i have heard of go. will have to look into it and how its coded and the mind set that the coder has to be in to work with it. still trying to find a code frame work that works the way my mind works. i can read most code figure out what its trying to do but i cant write code to save my life ( at least with c++).

@cotton if you are looking to the future look at the past seriously cobal coders make lots more than java PERL and C++ coders do on average. and yes wendell i know i just made you shudder at the thought of cobal.

PHP, with Composer and Laravel is really great. There is a fully featured VM compatible with Laravel out of the box called Homestead, and it mirrors some of the more standard test/stage/prod environments out there.

git clone https://github.com/laravel/homestead.git ~/Homestead

Or, if you’re on Windows:

git clone https://github.com/laravel/homestead.git /c/Users/userName/Homestead

That sets up the VM “globally”, and you can edit the Yaml file to work with directories, databases, etc. Use Vagrant to work with the VM. If you’re on Windows you can ssh in PowerShell using vagrant ssh or the PowerShell ssh is in Beta, and it’s been really, really, really nice.

Composer is really easy, especially if you’ve ever used Homebrew, Chocolatey, Pip, or anything like that.

composer require global "laravel/installer=~1.1"

and BOOM, you’re done.

Well, you’re not done, but you get the idea :wink:

PHP is still the dominant language out there, especially when freelancing (in my experience).

There is a great podcast and book to assist you with Laravel. The book is Mac focused, but the code works on Linux and Windows.

The Podcast
The Book

The Podcast and book are by the same person. I am not affiliated in any way with the author, but his book did help me tremendously, in a non-Mac environment (Windows).

Now, regarding your second question… I agree that Go is pretty popular, and it’s quickly overtaking Python in the infosec realm. There is also an insane amount of work you can do with just the standard library. It’s literally mind boggling.

Clojure is awesome, as well. You can do web dev, among other things as well. It’s a fascinating language, and based off of Lisp from what (little) I understand.

If you’re a fan of Ruby, you might try Scala? Scala, as well as Clojure, are JVM languages, but they’re very flexible and a lot of fun.

if you go with php, i’ll echo the sentiments above of “use composer” and “use a VM.” I don’t necessarily recommend starting with a framework (I’m one of those who says “learn the language first”); puphpet.com is the place to get set up with a local VM for dev/messing around.

I was also gonna say go

That doesn’t really answer your question, OP, but go writes and runs well enough for consideration (is there an emoji for a casual shrug? imagine that there is, and that I used it here).

PHP gets a lot of shit. Some warranted, some not. Composer + Docker + PHP/Symfony = solution for almost any problem you can think of. Above statement is true with a lot of other languages though.

1 Like

Thanks everyone, but I think I’m going the Ruby route.

I’m a sysadmin and want to automate everything with as little code as possible. The big hitters are connecting to DBs, IMAP and SMTP builtins, text manipulation, web scraping, and file manipulation.

I think Ruby can help me do this.

Happy hacking :slight_smile:

1 Like

I have played around with it too. I setup a repo for a small project so I can look it up for whenever I want to develop with it. One of the lectures I worked for that specialized in parallel computing wanted to change his class over to Go.

I used that during my last internship to make this website. It goes well with Vue.js as well.

https://www.adventurelandresort.com

I am guessing you are using Go for heaving networking code if you are using it with Laravel?

Going by broad stroke numbers I know that PHP is used in more places so going by that I would go with PHP. I would only use PHP through Laravel though. Not using Laravel is just cancer.

Bah, did not know this! Ruby all the way!!! It’ll help with Python, too.

Save PHP for the hobbies :slight_smile: