P.S If anything I would recommend learning networking... If I was going to say do something practical, assuming your networking knowledge is somewhat limited. 1. Learn to write and run a simple HTTP server. 2. Install it on a AWS server or get a Digital Ocean droplet. 3. Learn to create firewall permissions. 4. Run A/B tests. How well did it perform? What can you do to make it better from a networking/software prospective? 5. Go back to the drawing board and repeat. Once I first got into programming, I barely knew networking. This was the thing that bit me in the butt more than often, and at the time getting a server you can run your own software wasn't cheap. And a lot of software/programs these days require you to know how to set stuff like this up, since it's in way more demand. Node.js, Erlang, Go to name a few that are very server/networking oriented languages. Andrew McRobb Full-time Software Developer Part-time Freelancer mcrobb.info On Wed, Jan 24, 2018 at 11:47 AM, David Schwartz wrote: > What’s your top priority? > > Learning how to write compilers? > > Or learning something that will lead to gainful employment, growth, and > income? > > There’s very little call for people who write compilers today. As an > academic exercise, that’s fine. Just don’t expect it to lead to employment > any time soon. > > Also, writing a compiler in a functional language is ill-advised. > Compilers need to be FAST! That means using C or some other compiled > language. > > This is a relatively mature field as far as tools go. Lex and Yacc have > been around since the 80s, and they’re still the go-to tools for anybody > who wants to build a lexer and parser. There have been some “better > mousetraps” over the years, but the companies who put them out have > disappeared since the competition for compilers has dried up. > > Microsoft, Oracle/Sun (Java), and Apple (Objective-C, Swift) pretty much > dominate the market for “captive” compilers. > > There are also the open-source ones that you’ll find on every Linux > machine: php, perl, gnu c/c++, etc. > > Learn to program in something people are paying for, like R. > > C# and Java programmers seem to be a dime a dozen as the market is flooded > with foreigners. > > Depending on your organizational skills, you might also want to look into > DevOps. It’s a very broad subject and you’ll work with several different > languages and tools, some with very strange names like chef and puppet. > > DevOps is not an area you’re likely to find any specific classes in, > although it’s a growing field, especially in terms of managing things in > the cloud. > > But there are several good books on the topic. Search Amazon to see what’s > there. > > -David Schwartz > > On Jan 23, 2018, at 6:39 PM, trent shipley > wrote: > > Since my other thread degenerated into a “school bad, school good” flame > war, I thought I would try again. > > I have little academic OR practical background with programming. > > I want to write a couple of compilers. > > The compilers are for functional languages. > > I would PREFER to write the compilers with functional languages (1, a > Haskell to JVM compiler mostly in Haskell with with some Java, 2, > Funcalc--a pedagogical spreadsheet in Kotlin.) > > I'm pretty good at learning computer languages, and so far teaching myself > Haskell has failed to produce insurmountable obstacles. > > But programming compilers is supposed to be HARD, and very much indebted > to theory (as in, things they DO teach in school). > > I have no money for school, (and whether school produces better coders or > not, I LIKE school, but that's irrelevant due to the money problem.) > > Is it possible to teach yourself to write compilers in an imperative > language? If so how? Having learned to write compilers with imperative > languages, how do you convert to writing compilers in functional languages > (for example, given Haskell [thought by many to be hard], writing > lexer-parser-compilers is considered easy)? > > Regards, > > Trent. --------------------------------------------------- PLUG-discuss > mailing list – PLUG-discuss@lists.phxlinux.org To subscribe, unsubscribe, > or to change your mail settings: http://lists.phxlinux.org/ > mailman/listinfo/plug-discuss > > > > --------------------------------------------------- > PLUG-discuss mailing list - PLUG-discuss@lists.phxlinux.org > To subscribe, unsubscribe, or to change your mail settings: > http://lists.phxlinux.org/mailman/listinfo/plug-discuss >