linksForProgramming();
135 views | +0 today
Follow
Your new post is loading...
Your new post is loading...
Scooped by microamp
Scoop.it!

Interface With Your Database in Go Tests

Interface With Your Database in Go Tests | linksForProgramming(); | Scoop.it
Go's interface provides a way to abstract away things like your database for
testing.
more...
No comment yet.
Scooped by microamp
Scoop.it!

How to use interfaces in Go

How to use interfaces in Go | linksForProgramming(); | Scoop.it
Before I started programming Go, I was doing most of my work with Python. As a Python programmer, I found that learning to use interfaces in Go was extremely difficult. That is, the basics were easy,...
more...
No comment yet.
Scooped by microamp
Scoop.it!

How to deploy middleware in Golang + Nginx to filter access to applications in server. • /r/golang

How to deploy middleware in Golang + Nginx to filter access to applications in server. • /r/golang | linksForProgramming(); | Scoop.it
I have this requirement to deploy and authentication mechanism for ALL the apps in our server using Google Authentication. Plus, after...
more...
No comment yet.
Scooped by microamp
Scoop.it!

클로저(Clojure)를 시작하는 계기

클로저(Clojure)를 시작하는 계기 | linksForProgramming(); | Scoop.it
“리스프는 그것을 마침내 손에 넣게 되었을 때 경험하게 되는 심오한 깨달음을 위해서라도 배울 가치가 있다. 리스프를 이용할 일이 그렇게 많지 않다고 할지라도 그 경험은 그 자체만으로도 당신을 훨씬 훌륭한 프로그래머로…
more...
No comment yet.
Scooped by microamp
Scoop.it!

Reflections on Julia

Reflections on Julia | linksForProgramming(); | Scoop.it
   

Julia is a new language that could become the goto choice for scientific
computing, machine learning, data mining, large-scale linear algebra,
distributed and parallel computing.  It uses LLVM-based just-in-time (JIT)
compilation, has the speed of C and the dynamism of Ruby.  

Contributors of Julia wrote a manifesto to explain their motivation for
creating yet another programming language.  Jeff Bezanson, Stefan
Karpinski, Viral Shah and Alan Edelman highlight Python's annoying
dependencies, JVM's unnecessary overhead, and the debugging pain of
distributed systems like Hadoop as just of few of the reasons why Julia
exists.

Julia holds a lot of promise because of a few fundamental design choices:

* Almost everything in Julia is written in Julia.  This will get us out
of the C/C++ and Fortran dependency-hell of scikit-learn.
* Type system makes it possible to rapidly experiment and iterate on
data science problems.  The documentation claims that, "Julia’s type
system is designed to be powerful and expressive, yet clear,
intuitive and unobtrusive."  This is in fact the case.  For example
if we build a Hidden Markov Model and our initial attempt was to
treat all hidden states as Gaussian distributions, and now we want to
try out Exponential, we won't need to refactor the HMM code.  If HMM
was designed correctly and references the Distributions type, either
Normal or Exponential can be used. 
* Our limited testing suggests that identically constructed code often
will run 2-3 times the speed of Python
* Github is used for tracking all the Julia source code and for
installing packages. Goodbye PyPi and Maven repos!
* Julia supports metaprogramming.  This makes it possible for a program
to transform and generate its own code, resulting in a new level of
flexibility and powerful reflection capabilities.  
What's Missing?
* Pandas is significantly more mature than Julia DataFrames.
* For NLP problems, Python is still a better choice. TextAnalysis.jl
 is very basic.
* John Myles White points out some challenges with the current Julia
stats functionality that will be improved in v0.4.
* Julia community is still small (but hopefully growing).
Getting Started on OS X

Download and install Anaconda (only if you want to run Julia in IPython
Notebook)

Download and install Julia

Mac OS X Package (.dmg) contains  Julia.app.  Drag Julia icon to
Applications.

sudo ln -s /Applications/Julia-0.3.6.app/Contents/Resources/julia/bin/julia
/usr/bin/julia

julia in terminal (you should see the beautiful ascii version of the logo)

Pkg.add("IJulia")

Pkg.add("Gadfly")

Start IPython Notebook with a Julia profile (in terminal)

ipython notebook --profile julia

Useful Packages

Gadfly.jl - plotting and data visualization package that conveniently
installs most of the frequently used packages like DataFrames,
Iterators, Distributions,  etc.

Cairo.jl - Cairo graphics library used among other things to render PDFs
from Gadfly charts

DecisionTree.jl, Clustering.jl, MultivariateStats.jl - stats / machine
learning tools

DSP.jl - provides a number of common Digital Signal Processing
(DSP) routines

Graph.jl - provides graph types and algorithms like centrality, connected
components, cycle detection, etc.

Mocha.jl - deep learning framework inspired by the C++ framework Caffe

Optim.jl - basic optimization algorithms in pure Julia

Morsel.jl - a Sinatra-like micro framework for declaring routes and
handling requests. It is built on top of HttpServer.jl and Meddle.jl.

PyCall.jl - if all else fails, call some Python library

JavaCall.jl - reuse the millions of lines of Java code that's out there

~500 more packages

If you find a package that isn't registered you can install it by:

Pkg.clone("git://github.com/path/to/Package.jl.git")

To update packages:

Pkg.update() #for all packages
Pkg.update("DSP")

Examples and Tutorials

Introduction to Julia tutorial at SciPy 2014

YouTube videos

Implementing Digital Filters in Julia

Videos from the Julia tutorial at MIT

Learn Bayes Theorem with Julia

Data Analysis in Julia with Data Frames

Is it Ready for Production?

Yes!  We run Julia against massive volumes of data and process tens of
thousands of transactions per second.  We have successfully deployed Julia
for graph analytics, non-parametric probability density functions,
graphical models, DSP problems, etc.

We also use Julia in our fellowship.  While we encourage fellows to check
out Julia, we certainly do not insist on using it for every problem.    

Getting Answers to Questions

The julia-users mailing list is for discussion around the usage of Julia.

JuliaCon 2015 will be held at the MIT Stata Center June 24 - June 28.  

 

 
more...
No comment yet.
Scooped by microamp
Scoop.it!

Most common git screwups/questions and solutions - 41J Blog

Most common git screwups/questions and solutions - 41J Blog | linksForProgramming(); | Scoop.it
I was looking to learn a bit more about the parts of git I’ve not ventured into yet. What better way that looking the most common ways people screw them up and how to fix the resulting problems! Here’s a short list, compiled from my own experience and issues I’ve come across on the Internet. …
more...
No comment yet.
Scooped by microamp
Scoop.it!

go - Including context objects through multiple HTTP handlers in golang - Stack Overflow

go - Including context objects through multiple HTTP handlers in golang - Stack Overflow | linksForProgramming(); | Scoop.it
more...
No comment yet.
Scooped by microamp
Scoop.it!

JWT.IO

JWT.IO | linksForProgramming(); | Scoop.it
JSON Web Tokens are an open, industry standard RFC 7519 method for representing claims securely between two parties.
more...
No comment yet.
Scooped by microamp
Scoop.it!

Lean Helm window • /r/emacs

Lean Helm window • /r/emacs | linksForProgramming(); | Scoop.it
So, Helm is too heavy weight because it uses the header line and a source header line that can cost you 2 to 3 lines of screen estate in total....
more...
No comment yet.
Scooped by microamp
Scoop.it!

Turning the database inside-out with Apache Samza

Turning the database inside-out with Apache Samza | linksForProgramming(); | Scoop.it
This is an edited and expanded transcript of a talk I gave at Strange Loop 2014. The video recording (embedded below) has been watched over 8,000 times. For those of you who prefer reading, I thoug...
more...
No comment yet.