Thursday, December 31, 2020

Now That's a Gem - Productivity Hack - Lead Time Planning


A manager once told me his number one personal productivity tool was sitting down for ten minutes, at the end of every work day, and writing out his to-do list for the next day.

I remember something similar in "How to Stop Worrying and Start Living" by D Carnegie - the laggards leave the office early to "go spend time with the family" whereas the go-getters plan the next day.

Shame on me though :)

But, wait! What are the ten things this person learned at McKinsey?

  1. There are no experts in business - they've just mastered the "act". There's a reason they pay these young smart consultants from McKinseay and Bain.
  2. The answers are usually hidden in plain sight. That is, the information is accessible. It takes so analysis to convert it into actionable insights.
  3. MBAs are a waste of money. This person did two years of history at Oxford and concluded : in a few weeks of formal study, you can learn enough about economics, finance and strategy. It helps to read about two dozen good books on strategy. (I guess speed reading comes naturally to someone who's doing a PhD in history at Oxford😊)
  4. No jerks. Ever. Would colleagues want to sit next to you on a long flight? (the "flight test"). Bascially : follow the no a$$hole rule!
  5. Everything's a grid. As in - important/urgent risk/reward pain/gain. 
  6. The basics matter - agenda before meeting, lead time planning for next day, minutes and next-steps!
  7. Start at the end and go backwards. State the hypothesis and look for evidence the supports/contradicts.
  8. Don't look to consultants to save your company. They can only offer recommendations.
  9. Everyone is in sales - like it or not. 
  10. Manage upwards - handy for the case that your company doesn't follow rule 4 😊 Example : DD works for "the Rottweiler" who works his team to death. Predecessors who burnt out focused on mastering work-work while DD mastered meta-work - in this case, he figured out the office phone-system so he figured out a way to let the Rottweiler's calls go to voicemail. He'd listen to the message at his leisure, do the bare minimum and then use the phone system to record a message to his boss to be delivered later - at 10:30 at night! The Rottweiler was actually telling DD that he was working too hard!
BTW, Brett Arends is the guy who claimed he was going to invest in Russian stocks back in 2014. How did that play out?

Thursday, October 29, 2020

Add Line Numbers to a Text File

 You want

line 1

line 2

line 3

..

to become

1. line 1

2. line 2

3. line 3

...

My way : pipe through perl -p -e 's/^/$.. /;'

nl -ba and cat -n both give a large number of spaces before the line number. Don't know how to prevent that..

Tuesday, October 20, 2020

The Best Book Review in the World

https://www.amazon.com/Programming-Kotlin-Expressive-Performant-Applications/dp/1680506358

Reviewed in the United States on October 6, 2020
Pros: The broad organization of the book, in terms of order of chapters, headings and subheadings, is good. The summary at the end of each chapter is concise.
Cons:
1. The body text tends to be repetitious, The code examples are trivial and silly, and sometimes exemplars of lousy code. A poster child for the latter is the functional-programming recipe for testing whether a number is primreame. The author's code tries to divide the number by every number from two up to the number itself. In reality, for a non-trivially large number, you only need to divide by numbers up to the approximate rounded-up square root of the number to be tested - a recipe that Eratosthenes figured out 2 millennia ago.

Another instance of a bad example: he defines his own Complex class using Pairs - of *integers* for the real and imaginary parts. (They should be decimal or floating point numbers.)

2. The author has an unhealthy obsession about the supposed evils of read-write variables (declared with var). Traditional languages have them for a good reason: you can't keep cloning large collections (arrays, lists, maps, etc.) each time you decide to modify a collection by adding or removing an element. Kotlin itself has a family of classes prefixed with the name Mutable (e.g., MutableList) which, it turns out, can be declared with val - they permit modifications to the contents while not allowing replacement of the entire collection with another. (The fact that you get some safety by declaring mutable collections with val is not mentioned in the book: you have to go to the online Kotlin documentation.)

3. Some chapters are superficial placeholders that will take you from beginner to -- beginner. For example, chapter 20 on Kotlin programming on the android platform is a joke.

4. The book gives every impression of being a rush job, with more thought being given to the jokes in the text (which are sometimes decent, but often labored) than to the examples and detailed exploration of this excellent language, to which this book does a disservice.

5. The author repeatedly emphasizes conciseness (you don't have to type semicolons and sprain your right pinky - wow!), but mere conciseness without clarity (which is important for long-term code maintainability) is worthless. The old days where show-off C programmers tried to squeeze in as much semantics into a single statement, combining multiple assignments separated by commas, and increment/decrement operators are over - opaque code gets programmers fired today Kotlin allows a reasonable degree of conciseness, but I expect that, at some point, when enough experience with the language has accumulated, a style guide will be written that identifies the optimum balance between conciseness and clarity.

In summary, the author does a quick survey of Kotlin, but I have to wonder if he's ever written serious, production-quality code for a living.

Friday, October 02, 2020

Get the Length of Each Line : Something unix wc Can't Do

Replace each line with the character count :

perl -p -e 's/^(.+)$/sprintf("%d",length($1))/e;'

Prefix each line with character count :

perl -p -e 's/^(.+)$/sprintf("%d:$1",length($1))/e;'

Thursday, September 10, 2020

How Fascinating History Is


Joseph Leconte - on the preparation of saltpetre - 1862 :

SWEDISH METHOD

Every Swede pays a portion of his tax in nitre. This salt is therefore prepared by almost every one on a small scale. The Swedish method does not differ in any essential respect from those I have already described. First a clay floor; upon this is placed a mixture of earth, mould, spent ashes, animal and vegetable refuse of all kinds. Small twig branches, straw and leaves are added, to make the mass porous; a light covering, to protect from weather, frequent watering with urine or dung-water, and turning over every week or two. The process is precisely the same as the French, except that the process of preparation and nitrification are not separated. I only mention it to show that nitre may be made by every one on a small scale. By this method the beds are ripe in two years-- perhaps in less time in this country.

.. from "The Alchemy of Air" by Thomas Hager - super book.

Saturday, September 05, 2020

What it Takes to Work with the Best

Electrical Robotics Engineer - Senior
Location: Manchester, NHType: Full TimeMin. Experience: Experienced
For over thirty years, DEKA Research & Development Corp. has made Manchester, New Hampshire home. Housed in the largest industrial complex of its time, the historic Amoskeag Millyard, DEKA employs a team of professionals, whose engineering, design, manufacturing and quality expertise make DEKA a hot spot for creating innovative solutions and advanced technologies. Located about an hour from Boston, the beach, and the mountains, DEKA is one of the leading research and development companies in the country and is the birthplace of some of the most innovative and life-changing products of our time.

We are seeking a Senior Electrical Engineer for an advanced robotics program. This position will be central to the development of one of the worlds most advanced autonomous delivery robots. This is a rare opportunity to become involved at a stage where you will have major impacts on the design direction of an amazing piece of engineering. This candidate will be responsible for the concept, development, and production-related activities of electrical circuit board designs within a multi-disciplinary project team. The candidate should be familiar with a broad range of engineering activities from low level analog to high speed digital circuitry. This position requires a fair amount of autonomy and clever thinking as projects here at DEKA involve inventing new and better ways of solving the many engineering challenges that the world is confronted with.

Responsibilities:

Design and develop complex circuit boards containing a mix of analog and digital circuitry through the creation of schematics and the ability to manage complex PCB layouts
Perform debug and failure analysis of circuitry as well as the creation of test fixtures to aid in both the development and production of circuit boards
Create clear and concise documentation including electrical requirements, design descriptions, and failure analysis procedures
Requirements:

Requires at least 5 years of experience in the development of electrical circuit boards for complex electro-mechanical devices
Minimum of a BS in electrical engineering required
Demonstrated electrical design experience from concept through production
Proficient in debugging circuitry through hands-on testing, analysis and analog/digital simulation
Solid grasp of signal integrity, signal timing, power consumption, and design for ESD and EMC compliance
Experience integrating embedded processors with sensors, actuators, power management, and wireless communication peripherals
Must be skilled in writing and working with specifications and detailed design documents
Must be able to set priorities and work independently under aggressive timelines and date driven schedules

======================================

Oracle's Req for a Data Center Designer :

Evaluates reliability of materials, properties and techniques used in production; plans, designs and develops electronic parts, components, integrated circuitry, mechanical systems, equipment and packaging, optical systems and/or DSP systems.Responsible for designing, developing, modifying and evaluating electronic, electro-mechanical or mechanical components, assemblies or integrated circuitry for hardware systems for the external market. Includes new design, as well as modification activities that results in significant product enhancement. Activities encompass design, analysis, testing and process development using engineering principles and methods. Technical disciplines may include electrical and logical design of printed circuit boards or integrated circuits; mechanical design of electronics enclosures or integrated circuit packaging; and embedded software/firmware design.Work is non-routine and very complex, involving the application of advanced technical/business skills in area of specialization. Leading contributor individually and as a team member, providing direction and mentoring to others. BS or MS degree or equivalent experience relevant to functional area. 7 years of engineering or related experience.Oracle is an Affirmative Action-Equal Employment Opportunity Employer. All qualified applicants will receive consideration for employment without regard to race, color, religion, sex, national origin, sexual orientation, gender identity, disability, protected veterans status, age, or any other characteristic protected by law.As a DC Design Engineer at Oracle, you will lead designs for data centers globally and impact other projects around the world. You will help develop a highly creative and efficient design team tasked with solving problems and challenging the status quo. As a subject matter expert, you will have a direct impact on the design of prototypical DC facilities/white space provide technical guidance, solve large scale implementation issues, and build a strong understanding of international architectural, civil, and structural design requirements.Responsibilities: Communicate conceptual designs and create/maintain project documentation before, during, and after construction. Maintenance of Basis of Design, prototype design, and template specifications for architectural elements. Create, review, and release civil/structural/architectural design RFPs. Manage external civil/structural/architectural design consultants through the design and construction process. Coordinate with internal and external MEP design engineers. Effectively communicate design standards to internal and external project partners. Manage multiple fast paced projects simultaneously. Think outside of the box to find innovative solutions prior to and during the construction process to reduce costs without negative impacts on quality or reliability. Travel for site assessments, internal design meetings, construction review, and interfacing with design consultants. Anticipated travel of up to 25%.Basic Qualifications: 5 years of commercial / industrial design experience. 2 years of mission critical facilities design experience. 3 years of Data Center design experience. Solid working proficiency with AutoCAD, BIM, Revit, and MS Office Suite. Proficiency in building codes, local/regional/international regulations, and data center standards. Excellent communication skills and attention to detail. Preferred civil / structural / architectural / mechanical engineering degree.Job: Product DevelopmentOrganization: OracleTitle: Data Center Design DeveloperLocation: United StatesRequisition ID: 20000RVGOther Locations: CA-Canada

Friday, August 28, 2020

John Teel's Tech Tips


https://predictabledesigns.com/about/


Step Action Object
1 Define product, based on market research
2 Understand Costs and Obstacles en route to market
3 Formulate Plan to deal with costs/obstacles
4 Pick Development strategy and team
5 Design Schematic for Electronics
6 Generate Bill of Materials for Electronics
7 Design PCB
8 Develop Firmware and Software
9 Design 3D model for enclosure
10 Get Independent reviews
11 Build PCB Prototype
12 Build Enclosure prototype
13 Evaluate Prototypes
14 Get Certifications (UL,FCC, etc)

Sunday, August 09, 2020

The *ds of M$ and Why GOOG *Is* a Monopoly

*ds of M$ - why not have a easy way for the user to find out what has recently changed in his setup - especially without his intention!


Saturday, August 01, 2020

Stephen Covey Was an Idiot. Wait! Hear Me Out!

Why? Because he made it complicated.

Sure, you can take on these sophisticated behaviours and learn to "synergize" and watch the people who've grown up on sports teams make it look easy.

Or, you can look at what you're already doing and see what you can give up.

Which is easier for the hundreds of millions of people in the world who have neither the time, the access or the energy to read or grow?

If you wanted to transform your country by putting up habits posters in the buses and train stations, would you have stuff like

Think Win Win
Seek to Understand before You Seek to Be Understood

which means the people who already don't want to spend the energy thinking are going to have to think about what these mean, or would you rather have stuff like

The Seven Habits of Highly Ineffective People

?

Think about it Kim Jong None!

Sunday, July 26, 2020

The New Blogger is Crap

Why?

With the old one, you could make a post a sticky top post simply by setting the publish date to something in the future.

Try that with the new Blogger and what do you get? You can't even see the damn post because it's "scheduled to post" on that date you set. *ds of Google!

So, what *can* you do? You can 

  1. Revert to draft
  2. Publish with the new (current) date

And that'll ensure you top-post 😊




Oliver Wyman : Why You Shouldn't Outsource Your Flagship Products

Here's how they spell quality : In ustries.. Great. They ain't no McKinsey or BCG or Bain. That's for sure.


Walmart -> Amazon -> Google Express -> Target

That's how I ended up - needed the shower cleaner.

Look on Walmart.com, tough luck - you can see people have searched for it, because of the predictions when you type... but it just doesn't show up.

Worse, the Adidas after shave I usually get for $5 and change is all the way from $10 to $22 from various private sellers - on Walmart.com!

The Church and Dwight Clean Shower Daily Shower cleaner thing you can pick up from Kroger for less than $3 is $33 on Google! *ds!

Anyhow, on the same page, you see Target has it for $2.4. Good.

Get on there, and they also have the other stuff you want to get from Walmart, so... that's where I'm heading lads.

Wednesday, July 22, 2020

Loonycorn's NLP Class

Looks like they did this before Python 3 became mainstream..

page - urllib2.urlopen(url).read().decode('utf8')

No sir - first of all, urllib2 won't work with Python3.

Then, depending on the page you're pulling, you might not be happy with utf8.

Better to do :

(in Python 3) of course..

import urlopen.request

req = urlopen( url )
charset = req.info().get_content_charset()
page = req.read().decode(charset)

Falling in Love is Easy - Supposedly

Just go down Dr. Aron's list, says Mandy Lee Catron.. and then stare into each other's eyes for four minutes.

Set I

1. Given the choice of anyone in the world, whom would you want as a dinner guest?

2. Would you like to be famous? In what way?

3. Before making a telephone call, do you ever rehearse what you are going to say? Why?

4. What would constitute a “perfect” day for you?

5. When did you last sing to yourself? To someone else?

6. If you were able to live to the age of 90 and retain either the mind or body of a 30-year-old for the last 60 years of your life, which would you want?

7. Do you have a secret hunch about how you will die?

8. Name three things you and your partner appear to have in common.

9. For what in your life do you feel most grateful?

10. If you could change anything about the way you were raised, what would it be?

11. Take four minutes and tell your partner your life story in as much detail as possible.

12. If you could wake up tomorrow having gained any one quality or ability, what would it be?

Set II

13. If a crystal ball could tell you the truth about yourself, your life, the future or anything else, what would you want to know?

14. Is there something that you’ve dreamed of doing for a long time? Why haven’t you done it?

15. What is the greatest accomplishment of your life?

16. What do you value most in a friendship?

17. What is your most treasured memory?

18. What is your most terrible memory?

19. If you knew that in one year you would die suddenly, would you change anything about the way you are now living? Why?

20. What does friendship mean to you?

21. What roles do love and affection play in your life?

22. Alternate sharing something you consider a positive characteristic of your partner. Share a total of five items.

23. How close and warm is your family? Do you feel your childhood was happier than most other people’s?

24. How do you feel about your relationship with your mother?

Set III

25. Make three true “we” statements each. For instance, “We are both in this room feeling ... “

26. Complete this sentence: “I wish I had someone with whom I could share ... “

27. If you were going to become a close friend with your partner, please share what would be important for him or her to know.

28. Tell your partner what you like about them; be very honest this time, saying things that you might not say to someone you’ve just met.

29. Share with your partner an embarrassing moment in your life.

30. When did you last cry in front of another person? By yourself?

31. Tell your partner something that you like about them already.

32. What, if anything, is too serious to be joked about?

33. If you were to die this evening with no opportunity to communicate with anyone, what would you most regret not having told someone? Why haven’t you told them yet?

34. Your house, containing everything you own, catches fire. After saving your loved ones and pets, you have time to safely make a final dash to save any one item. What would it be? Why?

35. Of all the people in your family, whose death would you find most disturbing? Why?

36. Share a personal problem and ask your partner’s advice on how he or she might handle it. Also, ask your partner to reflect back to you how you seem to be feeling about the problem you have chosen.

What's someone else's take - someone who says don't bother going online :


1. Rock your appearance - so you are confident approaching - "magenetic attractability"
2. Use a casual contextual icebreaker. This is not a pickup line. Practise : compliment drive-by - 3 second rule - start with no-risk target - someone you are not interested in.

and then

2. Start conversing : How's your day going

Elements of meaningful conversation :
1. Ask awesome q's - non intrusive - shouldn't feel forced. best part of your day. open ended - why/how-make-your-fell avoid what/where/who. tell me more about that..
2. Give space for silence - let person collect and take a breath.
3. Listen empathetically - put yourself in that p's position. It'll feed your addition to connection. 
4. Share about yourself. stories, best part of your day 

Killer Jupyter Notebook Tips

A keeper

 

How to Clear Cell Output : 

ESC - R

will do it. ESC goes into command mode.

R then takes you into Raw mode, which clears the output.

And there you have it :)

Monday, July 20, 2020

Anaconda You Miserable Piece of Crap

Sure, it's free and you get what you pay for, but why can't you get something so basic right?

You go into your env and change the drop-down thingie to "Not installed", then, you put in the name of the package you're interested in. Then hit the checkbox, and then click Apply and it tells you, "the following xyz will be modified" kay - sounds a bit like Abort/Retry/Fail, but you click ok thinking it will do the basic job of installing said package so you can move on with your life.

No! Go to a new notebook and.. no module named xyz! *ds!

After that, it's back to conda install -c conda-forge <name>

Tom Rahill and the Swamp Apes


Since 2008, Tom Rahill and his grou, called the Swamp Apes, have captured at least 400 pythons. Though Rahill is a prolific hunter, he also has a day job working with computers. To hunt pythons, he uses a camera probe, a knife and his hands.

"The Everglades is a World Heritage Site. It's a international biosphere. To get to that point very clearly shows that it has a uniqueness unto the world. (weep ;-( ) The E's are a very flat geologic area that, effectively, have a river running over it. That river really is the health of the E's."

The South Florida Water Management District is tasked with protecting the health of the E's and managing the python problem.

Rory Feeney (Land Resources Bureau Chief) : They were first found in the 80's in the E's, but really became a problem after Hurricane Andrew, when several pet facilities were destroyed and also, people were buying these snakes and keeping them in their houses and eventually they become too big to maintain. You know, a six foot snake is one thing but when you have a 15-foot snake that needs to eat regularly, it becomes too much, to burdensome, so people found a place to release them, and that ecosystem in the E's is uniquely similar to their native habitat in the southeast Asian range. (Really? So after domestication (growing up in cages and homes) these guys learnt from scratch to hunt in the wild?)

Since 2000, the E's National Parks has seen a massive decrease in raccoon, possum, bobcat and rabbit populations (really? they'll tangle with bobats? Hats off then!) Pythons have been consuming up to 25 species of birds, including the endangered wood stork.

Now the bureaucrats have gotten funds for up to 25 highly trained people to go out and remove as many pythons as possible.

Rahill : "The pythons have made a significant impact, a negative impact, on the health of the ecosystem. It throws off the entire ecosystem." (man, this dude's into computers? I sure hope he don't write python code like he talks, or his kids is goin to starv)

After hours of searching, Rahill and his team spotted signs of a python.

"What is that down in there? See that?"

"Oh, it's a big shed, man. " (talking about the moulted skin)

Now, they figure out which direction the snake was going in based on that position of the moult - man, isn't the snake smart enough to figure out to shake it's dead skin up so as to not give it's bearing away?

Anyways, they go grab the thing and it's no big deal for the three of them. I say, how come? A python also has about a hundred teeth!


Jeez, the 15' female they get in this video has 61 eggs (112 pound weight). Phew! What a machine! It does all that it does while carrying that load inside its body. Man!


Alexander Green : I Want You to Buy Foxconn So I Can Cash Out

Hey, it's less than $3

My verdict : don't bother. Apple goes to them because they do the job cheap, but, they're already an $80b company. How big can they get before AAPL and DELL go to the next guys who're willing to sweat for their business?

Friday, July 17, 2020

It's Peter Munson, Not Peter Zimmerman

Who was Peter? This was Peter of "Smacked: A Story of White-Collar Ambition, Addiction, and Tragedy":

Peter R. Munson

Peter Munson is a partner in the San Diego office of Wilson Sonsini Goodrich & Rosati. His practice focuses on all aspects of intellectual property, including strategic counseling, prosecution, litigation, licensing, and other transactions, as well as counseling on other intellectual property and business matters.

Peter provides comprehensive counseling to clients on intellectual property and related business matters. He has analyzed intellectual property portfolios and performed IP due diligence for both venture capital firms and businesses in a variety of investment environments, including mergers and acquisitions. He has written opinions, negotiated and drafted transactional documents, performed IP audits, and formulated strategies for, and carried out, company formations, structured spin-outs, license renegotiations and acquisitions, and out-licensing of intellectual property in such fields as pharmaceuticals, medical devices, immunology, molecular biology, proteomics, microarrays, and gene therapy.

Peter has litigated patent, trade-secret theft, trademark, and trade-dress disputes in a diverse range of technical areas, including pharmaceuticals, cosmeceuticals, molecular biology, microarray, bone-substitute materials, DNA-sequencing instruments, and dental implants. He has prosecuted patent and trademark applications before the U.S. Patent and Trademark Office, including managing the national and international patent prosecution docket for multiple start-up and major San Diego pharmaceutical, device, and biotechnology companies.

In addition to his legal career, Peter has worked as a chemist at Cytogen Corporation in New Jersey and at Agouron Pharmaceuticals (now Pfizer) in San Diego.

Good to know

Areas of Practice 1) Intellectual Property, 2) IP Litigation, 3) Global Generics, 4) IP Counseling & Patents and 5) Life Sciences
Law School Franklin Pierce Law Center (J.D.,1997)
Admitted Year 1989
Education Cornell University (B.S., 1986)

He was making $1.4 million per year (and told his ex that it was only $700k per year)

Saturday, July 11, 2020

Apparently the Belgians Beat the Nazis to It

Lumumba tells you the Belgians weren't much to write home about.. but, it's much worse :


As the wickedly evil King Leopold II of Belgium forced the Congolese to produce rubber, he sent in his Force Publique to whip the natives into shape through genocidal murder. (Think of them as a Belgian Congo version of the Nazi’s SS.) Fearful that his soldiers would waste bullets hunting animals, Leopold ordered that the soldiers bring back the severed hands of dead Congolese as proof that they were enforcing the rubber decree. (Leopold himself never even visited his colony, although he did cause at least 10 million deaths.)

Sure, you can point to what the Spanish did in Latin America, but.. did you ever suspect the Belgians? Scum!

Saturday, July 04, 2020

Igor Tulchinsky's Four-Month Data Science Course

1 Program flow, data structures
2 Data structures, algorithms, classes
3 Data formats
4 Multi-dimensional arrays and vectorization in NumPy
5 DataFrame, Series, data ingestion and transformation with pandas
6 Data aggregation in pandas
7 SQL and Object-Relational Mapping
8 Data munging


9 Introduction to Machine Learning
10 Regression and classification
11 Metrics and overfitting
12 Model selection
13 Principal Component Analysis and Dimensionality Reduction, feature engineering
14 Statistical methods and nonparametric analysis, probability distributions
15 Ensemble methods
16 Support Vector Machine and Natural Language Processing


This by the way is the man who claims to find peace disturbing - "I'm serious. I'm so used to fast pace of things and ideas and emails and events happening that, if you take it away from me, I'll have a withdrawal."