Hacker Newsnew | past | comments | ask | show | jobs | submit | nipun_batra's commentslogin

Good questions. A few quick thoughts. These may not be enough though!

First, the mean function specified in the prior is zero for all the points. Thus, points would have a high density near zero.

I have a strong hunch that choosing a "smoother" kernel would not lead to this discontinuity.


I agree that distill.pub is great and so is the article you've mentioned. I did seek inspiration from the linked article amongst many others.


Many thanks for your generous comment :)


Very interesting! Thanks for the comment! I do see the advantages of beaker. I also see the advantages other way around :)


I do agree that stats people love R. This is one of the reasons I wrote this article. So that I can leverage all the good work they've gone. It is way better to write a wrapper than to reimplement everything from scratch. I'm coming from academia where I have a lot of systems work. So, I tend to be Python first user. But, I do want to utilise all the packages that are exclusively available in R.

Packaging is improving in Python afaik. People like Anaconda!


its not packaging per se - conda and gem are brilliant, but its intended for software creators and not math acads. install.package may not be a brilliant piece of software, but its perfect for people who develop stats algorithms and just publish to cran.

This is the package submission page to CRAN - https://cran.r-project.org/submit.html

This is the equivalent for Pypi - https://pypi.python.org/pypi?%3Aaction=submit_form


Submitting a package is the least important part of distributing it. For CRAN you can use the submit form you link to, for Python it's `python setup.py sdist upload` and you're done. CRAN in fact has much stricter standards for packages than Python -- you need a vignette, you need tests etc. -- which is why new R packages are usually on GitHub long before they make it to CRAN, whereas PyPI is happy to accept alpha and beta releases without documentation and without tests.


thats actually interesting to know - it would be illuminating to find out what really is the mental roadblock there, because this is something I have heard from multiple acads.


Language wars again :) I think both languages have their own strengths. I come from a programming background and took to Python. However, I often come up in situations when there are R implementations to some advanced statistical routines and none exist for Python. I'm sure vice versa would also be true. So, this is an attempt from that angle :)


I wonder if a fully automatic translator would ever be feasible. The current approach of handwriting the wrapper code for the packages I'm interested in seems to work well. I guess with a bit of community support, the recipe set can become richer.


I'll second that R is really awesome! Being a computer scientist, it opens up for me a lot of statistical packages.


R is the only real game in town for free software for scientific computing these days.

From a political perspective R was in the right place at the right time. It was a decent high level language that could handle matrix processing gracefully. Scipy/Numpy weren't ready for production yet. The others were Matlab, SAS, and Stata, all of which R makes look like APL.

I'm glad the field has a more healthy open source landscape with worthy competitors in the form of Julia and Numpy/Scipy.

R's biggest sin is failure to force people to use functional paradigms by providing juuuust enough imperative sugar to make average Joe programmer feel at home. R is a functional language, and that's the principle under which is should be taught.

That said, R also has a large number of main technical strengths:

1. Fast basic statistics within the REPL so you can test hunches quickly.

2. Cutting edge algorithms that often aren't implemented anywhere else.

3. Hugely strong engineering packages for civil, environmental, defense, aerospace and basically any IRL engineering field you can think of.

R comes free, with these advantages and many more for the average lab tech.


> R is the only real game in town for free software for scientific computing these days.

You have a very very narrow definition of scientific computing, excluding a huge part of the field, i.e. anything written in C, C++ or Fortran. And I've never seen people in aerospace or civil engineering use R, it seems to be mostly popular in statistics heavy, "softer" fields such as biology or economics.

Edit: to give some examples of what I mean: show me a (molecular dynamics|computational fluid dynamics|finite element method|Poisson solver|magnetohydrodynamics solver|electrodynamics solver|general relativity code|quantum many-body solver|lattice field theory code) written in R. I haven't seen any.


Just wanted to see a few. R has such a strong Fortran code base that I knew that they needed to be in R somewhere.

Molecular Dynamic - https://cran.r-project.org/web/packages/bio3d/index.html

computational fluid dynamics - http://search.r-project.org/library/rjacobi/html/xinterp.htm...

finite element method - https://cran.r-project.org/web/packages/RTriangle/RTriangle....

Poisson - https://cran.r-project.org/web/packages/isotone/isotone.pdf


None of those are actually simulation codes. The first and third are pre- and post-processing tools. The second is an interpolation tool. The fourth uses Poisson distributions, which is very different from solving the Poisson equation.


We just have a mismatch in the term "scientific programming" based on our perspectives. You seem like you're in the harder sciences in academia, while I'm in data science in industry.

I'll certainly cede the point that there's a great deal of important scientific code in many languages that can't be accessed from R.


>We just have a mismatch in the term "scientific programming" based on our perspectives.

Yes, exactly this.


The thing is, R interoperates very well with C, C++ and Fortran. So when someone who uses R needs to solve one of those problems, they'll generally just use C, C++ and Fortran, then you can call the function/program from R, get your results, chart/analyse them, etc...

And of course, R makes data exploration, statistics, and all those easier problems incredibly simple.


Don't get me wrong, I'm a frequent R user, and it is definitely useful for analysing at simulation results. My point was just that there is a lot of things outside of R's capabilities. Even for analysis there are areas where R is of no use, e.g. when plotting data from 3D turbulence simulations, like Q-criterion isosurfaces:

https://www.nas.nasa.gov/SC12/assets/images/content/Chaderji...


Yeah, for legacy or speed, you might need to drop down to lower libraries. But R makes that pretty easy.


> R's biggest sin is failure to force people to use functional paradigms by providing juuuust enough imperative sugar to make average Joe programmer feel at home. R is a functional language, and that's the principle under which is should be taught.

100% in agreement. That states what I have discovered after learning Functional programming.

The sad thing is people don't know that it is functional PAST first class functions. http://link.springer.com/chapter/10.1007%2F978-3-642-40447-4...


And lists + dataframes as first class citizens. Everything (including dataframes) is pretty much a list. Most R packages nowadays have dataframes in the centre of implementation.

Compare it to other languages, lots of code is needed to convert the data from one format to another, because there's no underlying data structure (Python is much better than the rest with regards to that, but still not as good as R).


"From a political perspective R was in the right place at the right time. It was a decent high level language that could handle matrix processing gracefully. Scipy/Numpy weren't ready for production yet. The others were Matlab, SAS, and Stata".

This is forgetting xlispstat, which was frankly the best of the lot. Free, functional (based on a subset of Common Lisp), and with dynamic graphics capabilities that R is now only beginning to match. But the problem I think was that it was maybe too early. In the 1990s, Lisp and functional programming seemed to be on the way out and object-orientation was the big thing (It's telling that the book on XlispStat is called "LISP-STAT: An Object-Oriented Environment for Statistical Computing and Dynamic Graphics", hyping the objects rather than the functional aspects). If it had come out now, with the current interest in FP/Lisp thanks to Clojure and Racket, it probably would have been more successful.


"Matlab, SAS, and Stata, all of which R makes look like APL" -- I am a little confused, what do you mean by that?

(and tbh, I would not call either SAS or Stata matrix programming particularly graceful -- it's pretty hard to beat Matlab at that though)



You spelled "Institute" wrong.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: