vim-fireplace: Communicates with nREPL. Various commands to bring up a command-line window integrated with the nREPL. Also supports navigation and lookups.
vim-classpath: Sets path for JVM languages to match class path of current project.
vim-clojure-static: Syntax, indent, filetype settings. Offers some degree of insert mode completion for core clojure vars and forms.
Consider vim-sexp, or other sexp navigation plugins.
Anya is live and ready to show you everything. Watch her strip, dance, and perform exclusive shows just for you. Interact in real-time and make your fantasies come true.
ā Live Streamingā Interactive Chatā Private Showsā HD Qualityā Free Actions
Free to watch ⢠No registration required ⢠HD streaming
In my experience though, college is useful for making connections - if I was given the opportunity to study CS at university level, I would jump on it. Ā Not for the actual education but for the certification and (most importantly) the connections.
As essentially an instance of the aforementioned citizen programmer and being friends with a fairly large number of them:
You donāt have connections until youāre already working or participate extensively in the community. Really cannot stress community participation enough if youāre trying to get somewhere. In SF this is pretty easy, but I feel it would be a massive struggle elsewhere. The solution is getting online, open source participation, etc
Without a piece of paper the only things going for you are your ability to understand and work through questions posed to you (talking the talk essentially), and projects you have completed or have in progress that you can show and discuss.
Getting hired at a large company, with full benefits and wonderful pay is made much more difficult. Theyāre going to look for a degree first at Google for example. However, even at these companies - if you know someone itās often more important. (It comes all the way back down to who you know - but that circles around to the connections youād make in college).
Youāre not going to understand the language until you run into it, or sit down and start digging through books and resources. Building things will not grant you magical comprehension of CS terms, the vocabulary can only be built through study and conversation.
However building things will in all likelihood give you an edge when it comes to practical interviews or just actual work. Assuming this is what youāre spending your time doing.
Basically, you need connections. As a fairly introverted person myself itās pretty damn frustrating. But itās necessary. Many of the people you meet might not even be as passionate as you are about programming, but it doesnāt matter - they know people and you donāt. College will give you connections and the vocabulary. College will not necessarily make you a great programmer - thatās on you and putting in the work.
Draft is apparently a new project being worked on by Nathan Kontny. Effectively lending version control to documents. I've heard of this being done using Git before to collaborate, but that's not an altogether approachable method. He's done an excellent job on this design:
I really look forward to this coming out.
You can add yourself to the list to try it out soon here.Ā
From just the little thumbnail there: he's laid out a before and after, demonstrating the effects of the process which has taken place, as well as in the center highlighted discrete changes. So we have a way of managing those changes, and overall demonstrations of their context and effects.
Just some notes on my current setup for front-end development.
I'm using a Commonjs system, MVC framework, functional helper library, two templating markups, and a functional reactive programming library. Also the majority of things are being written in CoffeeScript - I've considered using either Fay or ClojureScript for the sake of them, but I'm unsure how ClojureScript would work with Backbone and Fay isn't at all in a position to be used for a full project in my opinion.
Browserify, Backbone, Underscore, ICanHaz, Dust, and Bacon.
Explanations and notes on alternatives follow:
Browserify for using Commonjs style modules:
Browserify works fairly well. Including npm packages is nice. I've also wrapped a few things when I wanted to use the in a more modular fashion.
Like the case of MVC options, there are a fairly large number here: hem, stitch, browserbuild, volo, cajon, requirejs (I don't want to link all of them, if you are interested please locate them yourself). All in addition to browserify. Browserify does have a solid overhead in compilation due to its methods for handling requires. I'm using it because I was able to setup what I consider to be a solid little node script to handle compilation into a monolithic file while I make edits.
I really, really prefer having my code in a modular format - it makes it infinitely easier to manage. I'm also using CoffeeScript which I suppose should be noted - browserify handles it fine.
Backbonejs for MVC:
Backbone is fairly popular so I see no reason to introduce it. I'm actually using it for pretty much that reason in the case where I can open source or generally reuse the modules I've constructed for simple integration into other applications using Backbone
The other options here are numerous - TodoMV* has examples with a good number. I've used Knockoutjs and taken fairly thorough looks at Spinejs and Batmanjs (these are basically CoffeeScript parallels to Knockout and Backbone in many ways - there are some prominent differences - this isn't the post to discuss them).
Underscorejs forĀ convenienceĀ (largely due to it being a dep of Backbone):
Helper methods are helpful, who would've thought. I also attempt to get closer to a functional style of many things through the use of this.
ICanHazjs and Dustjs templating:
I am in fact using two templating languages throughout much of my code on current projects.
Dustjs is fairly fast and has a much wider breadth of features versus mustache. I use ICanHaz in whatever cases where the templates for a module either aren't made immensely simpler with Dust's features or I don't find the need to use them in my static site code as well.Ā
My browserify script also copies all instances of dust templates over to my project's templates directory so that I can use them in the initial generation of pages without needing to dig through the various modules in my client directory and locate the proper files. (Something that could likely be better and I'll seek to improve at a later time)
Baconjs FRP for [java|coffee]script:
This is just nice to use for handling events within my various modules. I've extended backbone's event delegation to create a map of streams from its normal event structure, that I can then hook into.
I'm also using it in GifGen's backend (I really need to get this damn thing done) for a couple things, including a job queue to associate available workers with the latest bits on the queue.
It's new, I find the source for it actually mediocre, and I don't use an entire swath of the available features because they're merely extremely specific wrappers for particular applications of core features that I do use. I have an implementation of a possible replacement to use throughout my code, but I don't consider it currently a viable alternative due to current pressures.
If anyone has any questions about the above or wants to tell me that something in here is actually horribly flawed - which given everything appears to be currently functioning alright, I do hope not - please reply or reblog or whatnot.
Aside: For whatever reason I sometimes find front-end development less "cool" than things like game dev or machine learning. In reality just as much complexity exists in front-end development so I shouldn't bother with such considerations, ignoring the complexity results in mediocre user experience regardless of how good the design for such was. Similarly to my conclusions to some of my sentiments about various languages - I need to get over both myself and this.
Anya is live and ready to show you everything. Watch her strip, dance, and perform exclusive shows just for you. Interact in real-time and make your fantasies come true.
ā Live Streamingā Interactive Chatā Private Showsā HD Qualityā Free Actions
Free to watch ⢠No registration required ⢠HD streaming
Apparently between WebRTC (firefox) and DataChannels (chrome) this will be a possible thing soon (/ already possible, just not widely available yet). Which is awesome, and exciting, and awesome.
"I hate ActionScript! But I like Javascript better!"
Whatās the difference? They both look exactly the same! Also AS has Classes and JS does not! (Unityscript does, but thatās a different topicā¦and it doesnāt prove my point). Ā </rant>
I find that languages looking a bit similar doesn't mean a huge amount...
ActionScript has classes because it's actually Object Oriented, which isn't something to glorify anything for. JavaScript is prototype-based, thus why classes aren't a thing. It's easy enough to write OO code in it, but equally simple to use the available prototypical style or even write it in a functional manner. The reason that their available similarities do exist is that ActionScript adopted the available standardized format for web scripting languages: ECMAScriptĀ - which is in turn based upon JavaScript in the first place.
Ā Anyway - the niches they fit into are fairly different -you might take a look at HaxeĀ if you wanted a sort of middle-ground with solid cross-compilation.Ā
Unsolicited answer isĀ unsolicited. Anyway they're both interesting and I use CoffeeScript for most of my personal work. You might check out ClojureScript and FayĀ randomly as well.
GitHub's code search has been improved! I consider singular points of input to be the idealized design - it really can't be cleaner than that. In terms of web user interfaces the issue with those becomes file input, because the user often won't realize that dropping a file into the area is also possible. But that's an aside - look at this:
Beautiful is at least my opinion. I find it a bit soothing that they chose a freely available / open-source system to handle the actual backend for the code indexing - ElasticSearch - just knowing that they used tools that everyone else is quite open to use feels nice.
Iām going to college next year for computer science. Iām wanting to know where I should start programming for fun? What language should I start in? Is it best to go from the ground up with C?
Edit, I realized I should outline any background. I made a website in Python, but Iām not really good at it. I donāt know what to do to get a good understanding of it.
If you're going into a computer science program the classes are going to typically start out with Java. So my personal answer depends upon what you want to do - do you want to get ahead of the curve for classes? If that's the case you should find out what languages are going to be used for which. If you're doing something lower level - then pick up C. If you're doing the fundamentals - Java. Python usually comes up in the second year I believe, depends on where you go. If you want to learn to program for the sake of learning to program there is a world of possibility and what you decide to learn is going to be dependent upon your intent once again. Mobile for Android - Java, Mobile for iOS - Objective-C, web programming - Python, Ruby, or Nodejs, maybe even Clojure. I could rant for a while on the variety of things getting into C, OpenCL for high performance stuff, Haskell and its absurd beauty in functional languages, or Erlang and the awesome actor model.
The gist of this is basically - figure out what you want to do and what language is going to fit that. Java if you're getting ahead in class. Learning a language will almost never hurt.
Polyglots all up in here.
I'm really sorry if this ended up more confusing than actually helpful. I'm excited whenever I see someone getting into programming. It's freaking awesome.
I recommend against jumping into C right off the bat, just in order to fit with your classes. I'm not going to reference code academy and the new onslaught of sites that have appeared as proponents of teaching basic programming since you're going to be attending classes for it and have already started a bit - but you might take a look at some.
I have a collected library of books that are mostly free online in the library section of my blog. I haven't fixed the resources section, ideally I'd have more helpful junk there - been too busy on a project. You might check those out a bit.
The best books you could possibly read would probably be CODE - The Hidden Language of Computer Hardware and Software by Charles Petzold. It covers basically everything low level and conceptual if that's your interest. And the high level conceptual ideas for computer science would beĀ discrete math - that'd put you ages ahead, but I haven't found a free book I considered very good on it yet - darker corners of the internet necessary... RosenĀ is the best book on it I've located.Ā
Anya is live and ready to show you everything. Watch her strip, dance, and perform exclusive shows just for you. Interact in real-time and make your fantasies come true.
ā Live Streamingā Interactive Chatā Private Showsā HD Qualityā Free Actions
Free to watch ⢠No registration required ⢠HD streaming
This is a list of some of the most bizarre programming languages you will ever see. These types of languages are usually called āEsoteric Programming Languagesā. An esoteric programming language (sometimes shortened to esolang) is a computer programming language designed either as a test of theā¦
These are all fantastic - malbolge in particular which I've discussed with some of my friends before. Repl.it has a repl for brainfuck and a few others if anyone is interested in just playing around with some - along with examples if you want to see how something actually working in one of them looks like.
My personal favorite remains LOLCODEĀ which I hope you'll take a look at some of the examples for. Because why not?
I do not understand why a file navigator that uses the dependency tree for a project entry point rather than the existing file system doesn't already exist. Adding new files adding new references simultaneously.
I've decided that if I'm going to play videogames to relax sometimes, I need to relate it to programming or design or something. So I've decided that I'm going to log my performance and do a visualization after a bit. First round of data gist If anyone has ideas for visualizations - message me or whatnot. Some notes on halo 4:
God-awful lag handling.
Single player focus on a game that previously did particularly well for multiplayer.
I was unaware of this - interesting that you can do that.
Personally I use compass, as I feel like [-moz | -webkit | -ms | -o | ] (-border-radius) for everything would get a bit annoying over the span of a file, versus @include border-radius(3px). A bit more to manage in terms of precompilation I suppose, but given I'm also using CoffeeScript for some things, I've become fairly used to it.
Anya is live and ready to show you everything. Watch her strip, dance, and perform exclusive shows just for you. Interact in real-time and make your fantasies come true.
ā Live Streamingā Interactive Chatā Private Showsā HD Qualityā Free Actions
Free to watch ⢠No registration required ⢠HD streaming
Need to take them. (Battle Programmer Shirase) Rewatching a bit of this to take a break. If you didn't know - the opening goes to the same tune as "Never Gonna Give You Up" - just a note.
What he lost, what he gained... and what he saw in the infinite outskirts of the internet Inside the virtual reality... the complex code, what is he thinking about? People call him... "Battle Programmer Shirase" also known as BPS.
Really had no idea how painful koehler was until I switched over to zenburn and was like - whoa... That used to suck. Low quality post is low quality. I have no excuse.