Thursday, April 21, 2016

Perl One Liner Quickly Spit Out Decimal from Binary

perl -e 'print unpack("N", pack("B32", substr( "0"x32 . "YOUR_NUM_HERE", -32 ))),"\n";'

Arul's code wasn't as helpful as Stack Overflow..

Making the long YOUR NUMs readable :

perl -e 'print unpack("N", pack("B32", substr( "0"x32 . "0110" . "1010" . "1100", -32 ))),"\n";'

Sunday, April 17, 2016

Maksimovic Feels Rakitic's Pain

This Coursera business must take its toll on our big name professors... I've seen Prof. Maksimovic grow old before my very eyes..

Intel Insight : What Makes 7 nm FinFET so Hard

When feature sizes are this small, it's simply impossible to produce a mask that is free from errors. We go through 10 masks (each costing a few 10's of 1000's of $) to get one with few enough errors that it can be fixed through Atomic Force Microscopy.

Tuesday, April 12, 2016

Congratulations Jan. Virtuix Bucket-Fill Picks Up the Pace

Hmmm... nice - the last couple days look like they're getting about 50k per day or more.. Last time I took the trouble to calculate, it was a measly $20k/day. Still a ways to go..

I Wish : Machine Learning

Can you come up with a web-based app that can quiz you for a few minutes and then tell you how long it will take for you to achieve a certain level of proficiency in a target area? That would be cool - and it would be nice if they also had the resources you would have to plow through to get there...

Udacity : On What it Takes to Become a Machine Learning Engineer

1. Computer Science Fundamentals and Programming

Computer science fundamentals important for Machine Learning engineers include data structures (stacks, queues, multi-dimensional arrays, trees, graphs, etc.), algorithms (searching, sorting, optimization, dynamic programming, etc.), computability and complexity (P vs. NP, NP-complete problems, big-O notation, approximate algorithms, etc.), and computer architecture (memory, cache, bandwidth, deadlocks, distributed processing, etc.).
You must be able to apply, implement, adapt or address them (as appropriate) when programming. Practice problems, coding competitions and hackathons are a great way to hone your skills.

2. Probability and Statistics

A formal characterization of probability (conditional probability, Bayes rule, likelihood, independence, etc.) and techniques derived from it (Bayes Nets, Markov Decision Processes, Hidden Markov Models, etc.) are at the heart of many Machine Learning algorithms; these are a means to deal with uncertainty in the real world. Closely related to this is the field of statistics, which provides various measures (mean, median, variance, etc.), distributions (uniform, normal, binomial, Poisson, etc.) and analysis methods (ANOVA, hypothesis testing, etc.) that are necessary for building and validating models from observed data. Many Machine Learning algorithms are essentially extensions of statistical modeling procedures.

3. Data Modeling and Evaluation

Data modeling is the process of estimating the underlying structure of a given dataset, with the goal of finding useful patterns (correlations, clusters, eigenvectors, etc.) and/or predicting properties of previously unseen instances (classification, regression, anomaly detection, etc.). A key part of this estimation process is continually evaluating how good a given model is. Depending on the task at hand, you will need to choose an appropriate accuracy/error measure (e.g. log-loss for classification, sum-of-squared-errors for regression, etc.) and an evaluation strategy (training-testing split, sequential vs. randomized cross-validation, etc.). Iterative learning algorithms often directly utilize resulting errors to tweak the model (e.g. backpropagation for neural networks), so understanding these measures is very important even for just applying standard algorithms.

4. Applying Machine Learning Algorithms and Libraries

Standard implementations of Machine Learning algorithms are widely available through libraries/packages/APIs (e.g. scikit-learn, Theano, Spark MLlib, H2O, TensorFlow etc.), but applying them effectively involves choosing a suitable model (decision tree, nearest neighbor, neural net, support vector machine, ensemble of multiple models, etc.), a learning procedure to fit the data (linear regression, gradient descent, genetic algorithms, bagging, boosting, and other model-specific methods), as well as understanding how hyperparameters affect learning. You also need to be aware of the relative advantages and disadvantages of different approaches, and the numerous gotchas that can trip you (bias and variance, overfitting and underfitting, missing data, data leakage, etc.). Data science and Machine Learning challenges such as those on Kaggle are a great way to get exposed to different kinds of problems and their nuances.

5. Software Engineering and System Design

At the end of the day, a Machine Learning engineer’s typical output or deliverable is software. And often it is a small component that fits into a larger ecosystem of products and services. You need to understand how these different pieces work together, communicate with them (using library calls, REST APIs, database queries, etc.) and build appropriate interfaces for your component that others will depend on. Careful system design may be necessary to avoid bottlenecks and let your algorithms scale well with increasing volumes of data. Software engineering best practices (including requirements analysis, system design, modularity, version control, testing, documentation, etc.) are invaluable for productivity, collaboration, quality and maintainability.

Sunday, April 10, 2016

Anyone Not Love Github?

What a super experience? I decide it's no point with the paid plan... I'll never convince my boss to use it, etc. Let me save my $7 a month, and, login, billing, change plan, downgrade and .. immediately - you will be refunded x for this billing period. .... Super! Great job Linus.

Saturday, April 09, 2016

M$ Edge Bests Google Chrome Again

Just something about the free thing - you get what you pay for. Sure, Google Chrome works 99.99% of the time, but, Paychex just now bombed on it and M$ edge delivered. Go figure.

Still, AAPL and AMZN are not GOOG. GOOG gives the world good (I hope) things for free. AAPL has only now caught on..

Things You Can Do with Excel that You Can't Do with Google Sheets

https://www.quora.com/What-cant-I-do-with-Google-Sheet-that-I-can-do-with-Microsoft-Excel is a good starting point.

My list :

Format as table is big. Why the hell can GOOG provide that? There's a reason smart people avoid lists and go for tables. Check it out : Pg 42 of Lauren Starkey's masterpiece.

Shame On You Cal Newport

Sad that an MIT product would put out a time-waster like this.

Like anything, it's not ALL bad - there is some good in it. Only, like most stuff that comes out these days, it can be condensed into about 2 pages.  (Deep Work : Rules for Focused Success in a Distracted World)

Mate, why the hell do you write it like the body of a paper without the abstract? You're giving us motivation and wasting 200 pages on it. Start the book with something like :

"... The author's hope is that the reader, after digesting this material, see that it is in his best interest to suspend his Facebook and Twitter accounts, sign out of email accounts after 5:30 PM, stick to a rigorous sleep, diet and exercise regimen, and organize his schedule to allow for complete free-days to focus on vital projects. The sections on accessing empowering states to boost concentration, and the role self-awareness plays in managing one's emotional state are also crucial to internalize."

Of course, Mr. Newport is targeting 200 publications and 20 books before his 30th birthday, so the stuff I mentioned at the end of my preferred intro will (maybe) show up a few years later. Think about it man!! Don't you know people with low self-esteem have trouble concentrating? If your life is not in order, you will be distracted! If you have problem relationships, they will plague your mind! Do you see great work coming out of the trailer parks? Why not? It isn't like they don't have the time! Think about it - do some HARD WORK and THEN publish for EVERYONE! Not the R1 tenure-track community!!

Bottom line - there's a lot of basic stuff missing - people with high self-esteem and high energy-level concentrate better. Even Magnus Carlsen knows he needs to exercise regularly. And food? How about a basic list of OK snacks and OK meals and NOT OK stuff? Keep it simple you !@#$!@#$. Is it any surprise that MIT guys haven't accomplished anything near the Stanford grads in the last 20 years? That's because all they're trained it to push the boundaries of publishing. Give the lay people something they can use mensch! If Albert Lin knew this, he wouldn't have white hair before his 25th birthday.

One thing I learnt from Dan Arieli (The Upside of Irrationality) is - if you're doing something you enjoy, take breaks. If you're doing something you need to plough through, plough through! Don't take breaks. The rationale? Humans are very good at adapting. If it's something you like - you'll adapt - and the pleasure will not be noticeable anymore and you'll want to up the intensity. Why do people drink more or overdose (okay, that's naive I know). So, if you're taking a shower and you like the warm water hitting your back, stop! Enough! If you're working on taxes - GET IT DONE!! The point? When it comes to email - my brilliant insight is to always leave one email unchecked. You open your mail tool and see a bunch of new emails - decide right away which one you're going to save for checking later. Check the others and then shut the tool down. That's what I'm going to do from now on.

Enough sliming of the bad Mr. Calport :) Now, what DID I get out his airport trash :

The chain method of Jerry Seinfeld. BIG ONE - how to use it - incorporate it into your dashboard - I keep an excel spreadsheet (Google sheets sucks btw - why can't they provide the same features M$ does??!!) open all the time where I have separate sheets for accomplishments, targets, learning, etc. Now, I'll be putting in a new one - that's a running calendar and, I'll use that one to build a chain. Looks like the calendar thing is a solved problem - so that's good - we'll see :)

Simply : try to get rid of email, Facebook, Twitter, IM. Ensure you do come into contact with people regularly - as that gives your thinking the jolts it needs. Minimum time allocation for deep work of significance is one day. Also - learning to memorize a deck of cards in 5 minutes is a big deal - it will take you to the next level in concentration. [[I can't say for sure what exactly I got out of memorizing the Rubik-cube solution - but I'm none the worse for knowing it. I tell people I noticed my stress level was lower after I learnt juggling. (The rationale is that you become more comfortable with having a lot of things going on because you learn to let something go to deal with something else). Likewise, I've said that my Lumosity lifetime-subscription has more than paid for itself because, at the very least, getting better at something boosts your self-esteem and confidence and that, by itself gives you better cognitive ability and productivity that you can take to your day job.]]

Donald Knuth : 

I have been a happy man ever since January 1, 1990, when I no longer had an email address. I'd used email since about 1975, and it seems to me that 15 years of email is plenty for one lifetime.

Email is a wonderful thing for people whose role in life is to be on top of things. But not for me; my role is to be on the bottom of things. What I do takes long hours of studying and uninterruptible concentration. I try to learn certain areas of computer science exhaustively; then I try to digest that knowledge into a form that is accessible to people who don't have time for such study.

____

The bimodal philosophy believes that deep work can produce extreme productivity, but only if the subject dedicates enough time to such endeavors to reach maximum cognitive intensity - the state in which real breakthroughs occur. This is why the minimum unit of time for deep work in this philosophy tends to be at least one full day. To put aside a few hours in the morning, for example, is too short to count as a deep work stretch for an adherent of this approach.
-----------
The chain method (as some now call it) soon became a hit among writers and fitness enthusiasts - communities that thrive on the aility to do hard things consistently. For our pruposes, it provides a specific example of ageneral approach to integrating depth into your life : the rhythmic philosophy. This philoosophy argues that the easiest way to conssitently start deep work sessions is to transform them into a simple regular habit. The goal, in other words, is to generate a rhythmm for this work that removes the need for your to invest eergy in deciding if and when you're going to go deep.
---------
The shutdown ritual described earlier leverages this tactic to battle the Zeigarnik effect. While it doesn't force you to explicitly identify a plan for every single task in your task list (a burdensome requirement), it does force you to capture every task in a common list, and then review these tasks before making a plan for the next day. This ritual ensures that no task will be forgotten : Each will be reviewed daily and tackled when the time is appropriate.
--------
Rule #1 taught you how to integrate deep work into your scheule and support it with routines and rituals designed to help you consitently reach the current limit of your concentration ability. Rule #2 will help you significantly improve this limit. The strategies that follow are motivated by the key idea that getting the most out of your deep work habit requires training, and as clarified previously, this training must address two goals : improving your ability to concentrate intewntsely and overcoming your desire for distraction. These strategies cover a variety of approaches from quarantining distraction to mastering a special form of meditationl, that combine to provide a practical road map for your journey from a mind wrecked by constatnt distraction and unfamiliar with concentration, to an instrument that truly does deliver laser-like focus. 
------
Memorize a deck of cards :
  1. You have to be able to visualize moving through 5 rooms in your house and, in each room, you have to be able to, in your mind, go from one significant object to another - 10 per room. Add 2 objects of your choice to the 50 already compiled.
  2. Now (and here's where I wish you could make  lifelike effigy of Andy Grove bear down on Calport and say "You are telling me WHAT to do, when I want you to tell me HOW to do it.") (the hard part) you have to readily have 52 people or things associated with the different cards of the deck - say Trump for the King of Diamonds - make up your own meanings. Say Marilyn M for the 1 of D, you get the idea.
  3. Then, looking at the deck of walk through your house and put a person with each object.
And you're done :)
Easy, right? Scumbag Calport!
-------------

Friday, April 08, 2016

Congratulations Jan Goetgeluk. Congratulations Virtuix. Ha Ha SeedInvest

The sad thing is people are already pulling money out :(

Last night at 6:30 they were at $3955299.
This morning : $3954498

They were at $3816766 six days ago. 

Which means, the goal of $15 mil will be reached on : Jan's Birthday! Aug 10, 2017!

Wednesday, April 06, 2016

Shame on Me : Vocore

How come I didn't even know about this?

Move over Eben Upton!

Special Mention : http://www.kroah.com/linux/talks/ols_2005_driver_tutorial/

Another new today : There's such a thing as Perl 6 and rakudo is something that "runs Perl 6". WDTM?

Friday, April 01, 2016

How to Create Flashing Cells in M$ Excel

And have them flash when you open your workbook :

start with excel.tips :

http://excel.tips.net/T002134_Flashing_Cells.html (resource)

had to figure out how to do new cell style




turn on the Developer tab

Click on the Macros button. In the Macro dialog that pops up, one of those you already
have will be selected. No problem, in the Macro name : field, start typing : StartFlash

Now, all all buttons that were available get greyed out and the "Create" button becomes
available. Click it and you go to VBA editing - now, paste Allen's code and ensure you
change "Flashing" that he has in 2 places to whatever you called your style..

then, to paste Allen Wyatt's macros :

google "excel create vba macro"

To make this one start automatically when you open this workbook :

https://support.office.com/en-us/article/Run-a-macro-5e855fd2-02d1-45f5-90a3-50e645fe3155#bmrunmacroautomatically (resource)

(summary :)
You go to Visual Basic

Right click "This Worksheet". And add : (or overwrite) (you do need to read the stuff on above link :)

Private Sub Workbook_Open()
    Run "StartFlash"
End Sub