For the last few days, I have been dwelling myself into Wolfram Language inside Wolfram Cloud Lab, which is really quite a brilliant and I got a taste of a BIG KNOWLEDGE and ALGORITHMS.
I grow to like Wolfram Language really quickly. It sure has lots of potential. I have few issues with Wolfram Language, knowing these 3 things:
EDX x Microsoft sponsored tutorial on "Introduction to Python for Data Science":
So, I guess I will continue my Python study journey from here via iPython and Jupyter Notebook. I might write some iPython article here and there.
Nice link documentation on Jupyter Notebook aka iPython Notebook:
http://jupyter.cs.brynmawr.edu/hub/dblank/public/Jupyter%20Notebook%20Users%20Manual.ipynb
Programming experience and instant interactive feedbacks as rewards, are two essential things for learning, exploration and prototyping.
Surely, self-taught programmer still need to know the hard way of things:
I grow to like Wolfram Language really quickly. It sure has lots of potential. I have few issues with Wolfram Language, knowing these 3 things:
- I cannot work offline with Wolfram Lab free basic (need the cloud access and Internet for non Desktop version). I wish that FREE mode gives me the Desktop version.
- With FREE Wolfram, I am pretty much limited. I am willing to pay when I got serious with my research, but that is for later.
- Wolfram Knowledge Base, aka Wolfram brain is very big, with all the objects and symbols, however, it does not mean it knows everything or have the data that I wanted to work on (obviously!). I do not want to be limited by Wolfram cloud data allowance or memory limit.
I guess the path of self-taught artist wanting to learn bigger idea of programming can be a bit bumpy :) but not to worry.
DEAR WOLFRAM, IDEALLY...
In an ideal world, tool such Wolfram Language should be available freely, like open source, pre-installed in every computer. Users can work offline and online as they please. Surely, maybe one day.
NOTE:
I do still consider paying subscription license to Wolfram Foundation, if I am actually going to be using this everyday as my professional career. So I will still look into Wolfram because it is such an interesting environment with big knowledge base. Eventually SIRI can query Wolfram like programming, I think, but that is something to look into years from now.
ALTERNATIVE FUN ENVIRONMENT FOR PROGRAMMER
OK, all I want is a nice friendly and creative environment with my choice of language, in an interactive kind of way... Is this really possible?
(* short pause and sight *)
THANKFULLY, I am quite lucky and by accident I found out this free tutorial earlier few days ago:
EDX x Microsoft sponsored tutorial on "Introduction to Python for Data Science":
Inside that online class, they have this nice teaching tool thing called iPython Online Notebook. It really works great for learning and testing running program.
Few years ago, I found iPython is not very appealing because it is running on the console, and seems so basic... Apparently I was wrong in a good kind of way.
IPYTHON > JUPYTER (NOTEBOOK) > ANACONDA!
There is apparently this iPython Notebook called JUPYTER!
http://jupyter.org/
JUPYTER is like an interactive Python (availlable online) you can have with features surprisingly similar to Wolfram Language! Such as displaying images inline and graph plot, and even YouTube video directly as output. JUPYTER NOTEBOOK is very similar to Wolfram Language.
JUPYTER iPython combined with all useful Python modules (Pillows, numpy, matplotlib, pandas, etc) apparently making iPython a very friend place. That is something I seriously have always been looking for.
Me personally have some interests with data study, but more to the visualization of the data. With programming, really I am quite picky and slowly learning things. I will not continue, unless it is fun.
OK, so Jupyter Notebook is really the tool you want to get comfortable with. You can install Jupyter manually, however, I found that using ANACONDA bundle, will get you quicker and faster.
Below is a snapshot of offline version of JUPYTER that I currently have running, after installing ANACONDA, it is using Python 3. It comes with all the modules needed, such as Pillows PIP, Pandas, NumPy, MatPlotLib, etc...
So, I guess I will continue my Python study journey from here via iPython and Jupyter Notebook. I might write some iPython article here and there.
Nice link documentation on Jupyter Notebook aka iPython Notebook:
http://jupyter.cs.brynmawr.edu/hub/dblank/public/Jupyter%20Notebook%20Users%20Manual.ipynb
EASY vs HARD
If you are as clueless as me, starting to learn programming from ZERO, I think to have Python and Interactive iPython under Jupyter is a good start. Not just good, but in fact something like JUPYTER is really convenient and friendly enjoyable environment you would wish to have. It might change again in the future with SWIFT.Programming experience and instant interactive feedbacks as rewards, are two essential things for learning, exploration and prototyping.
Surely, self-taught programmer still need to know the hard way of things:
- Knowing how to install the programming language
- Typing using notepad, better if you use editor with syntax highlight like Sublime
- Knowing how to run the program
- Make a lot of programming error
- And so on...
This kind of "Interactive Notebook" way of learning and writing programming history and notes is really a blessing.
So, I will try to utilize this from today. Let see how far this can go.
Few pointers on why I like this idea of interactive notebook for programming:
Another snapshot of Jupyter running iPython Notebook. |
- We can see the whole story and progression of how script become
- We can see the INPUT + OUTPUT that is sometimes clearer than commenting. Unlike typical note taking of just the programming script, not seeing the output is not convenient
With Jupyter, I could save the HTML version, Python (script only with commenting), and the actual notebook (ipynb).
That's the story narrative of being programmer: "It is good when everything just runs smoothly."
WEIRD LITTLE THINGS...
Working in a different environment could result in few anomalies. Like creating matplotlib plot inside Jupyter, apparently users need to add magic word like this:
%matplotlib inline.
Otherwise it will leave your Jupyter frozen.
%matplotlib inline.
Otherwise it will leave your Jupyter frozen.
Just to keep that in mind. But usually you can find the solution by Google-ing. Fingers crossed.
That's the story narrative of being programmer: "It is good when everything just runs smoothly."
IN THE FUTURE, FUTURE...
I do believe that Wolfram Language is like THE FUTURE that one wishes to have access to. I am definitely not the only one wishing this to happen.
Seeing all the Wolfram videos online, and some of the demo, even by Wolfram's Son is quite amazing to me:
That is really how computing should be.
Comments
Post a Comment