HNHacker News
TopNewBestAskShowJobs

truth_be_told

94 karma · joined September 8, 2018

submissionscomments
truth_be_told··on My Business Card Runs Linux
>Don't bother with Arduino

I wouldn't say that. Yes the Arduino "libraries" abstract away a lot of the complexities and hinder true understanding. However for a beginner it is a perfect platform simply because of the huge community i.e. tutorials, code and projects. Once they gain confidence from using this, they can move on to "traditional embedded development" by learning to program the underlying AVR directly i.e. use the toolchains installed by the IDE, delete bootloader and upload your program using the ISP interface (see the book; "Make: AVR Programming"). This gives you the best of both worlds using the same development platform. Another advantage is that many other MCU families also provide a "Arduino-like" interface (eg. Energia for MSP430) and thus all the skills learnt on one can be transferred to another.

truth_be_told··on My Business Card Runs Linux
I think in a sense you are proving my point. Real knowledgeable people have done the hard work to simplify much of technology so that it is easy to get started on. But the moment you are past the "commoditized" part, the "learning ramp" for an embedded system becomes exponential. Not so with pure higher-layer Software Apps. There is also the fact that an "embedded system" spans a very broad domain and hence requires a broad spectrum of knowledge and skills eg. developing a Network Appliance vs. Bread toaster.

In my own experience moving from pure applications software development (though not a web developer) to network appliances to lower-level embedded development i have been amazed at all the "hidden complexity" which you suddenly become exposed to. And this is just the software part. If you get into the hardware part you have a whole another world of knowledge to learn. Merely doing something without understanding is the difference between a "Technician" vs "Engineer/Scientist".

truth_be_told··on My Business Card Runs Linux
Nice! However your last two paras are a little too succinct; can you elaborate a little bit more?
truth_be_told··on My Business Card Runs Linux
I am sorry, you are very wrong.

A complete "Embedded System" (HW+SW) is orders of magnitude more complex than "Web Client Design and Implementation" (unless you approach Google/Facebook scale). The malleability of SW means you can quickly try out various techniques without too much "learning overhead". With all the existing Frameworks/Libraries/etc it becomes more of a "plug & play" proposition. Not so with Embedded Systems. You have to know EE/Electronics, programming interfaces to HW, Bootloader and OS kernel (if using one), Complex Toolchains/ICE/Simulators/Debuggers and finally; The Application. Each is a huge domain in itself and has a significant learning curve. To have all of them in "one head" is remarkable and non-trivial.

truth_be_told··on My Business Card Runs Linux
True. This is what i dislike about the "market". There is no reward for knowledge, hardwork, solving complex problems etc. Just "commoditization" and "supply and demand dynamics".
truth_be_told··on Why Are Rich People So Mean?
Very good article. The bit about his cognitive dissonance in India really hit home for me. I have experienced the exact same thing where it really feels immoral/unethical to spend so much on one's selfish wants (eg. all sorts of consumerism, much of it totally unnecessary) when there are entire families who need that money to survive. Their suffering is entirely due to accident of birth and an environment which makes "upward mobility" quite difficult if not outright impossible.

What is the root cause of it all? Our current Economic System which is propped up by self-serving laws and Military might euphemistically explained as "maintaining order in the World". All of it lies designed to enrich and keep in power a select few to the detriment of the global population, particularly; the poor and the disenfranchised.

We need a complete rethink of our current Economic System, Progress and Civilization as a whole to bring back "Humanity" into the Human species.

truth_be_told··on The Wave that changed the world (2017)
Fact.

All you need to do is look at the horrors of various "Ethnic/Communal Cleansing/Riots" etc. in various countries across the world. Eg. 1) Ethnic cleansing during breakup of Yugoslavia 2) Communal Riots in some of the countries of South Asia etc. In many cases it was literally neighbour-vs-neighbour all because the environment changed to expose and sanction to act on various fault lines eg. ethnic/linguistic/religious etc.

truth_be_told··on The Wave that changed the world (2017)
Well said. The "Human Animal" has a "dark side" which only needs a suitable environment where it is condoned without repercussions for it to flourish. In a small group (eg. a Village) since every person is personally identifiable these "animal" tendencies can be kept in check by a suitable environment. But in a larger group (eg. a City) because of the power of anonymity rules can be broken without repercussions. "Cyber Bullying" is another very good example. "Normal" people say the vilest of things due to the psychological distance involved and lack of personal repercussions on the Internet.

In a way, i think B.F.Skinner's "Behaviorism/Operant Conditioning" was exactly right as regards "Human Nature" but sadly people don't want to give up their utopian fancies.

truth_be_told··on GoodbyeDPI – Passive Deep Packet Inspection Blocker / Circumvention Utility
It is an impossibility. Protocols are layered and so at one layer you can add features to detect possible MITM (eg. IPSec, SSL etc.) but cannot always be eliminated.

I suggest you consult a book like "The TCP/IP Guide" to get an overview of the main data protocols and how they work. In this day and age, everybody ought to know something about the basic protocols which form the bedrock of our networked society.

truth_be_told··on The Psychology of Serial Killer Movies
I hate Horror/Serial Killer movies and avoid watching them. I find them morbid and do not understand the American fascination with them. To me it is an indicator of something intrinsically wrong with modern American society. Other countries/cultures with huge movie industries (eg. India, China etc.) produce nothing like what Hollywood does in this genre. Psychologically, our minds can be bent towards the best of the best and the worst of the worst given the right stimulus and conditioning. For a healthy functioning society we need systems in place to dampen our worst tendencies and heighten the best ones. These sort of movies do the opposite.
truth_be_told··on Consume less, create more
You have nailed it!

A lot of us are suffering from the above same mindset but because we don't even put forth the time to step back and reflect, we don't realize that we are simply running in place without advancing towards our goal (if we are even aware of our goal).

Bertrand Russell in his book "The Conquest of Happiness" says;

My purpose is to suggest a cure for the ordinary day-to-day unhappiness from which most people in civilized countries suffer, and which is all the more unbearable because, having no obvious external cause, it appears inescapable.

Our current Society and Technology have made matters exponentially worse. "Consumption/Distraction" have become the norm and we have to fight the Environment mighty hard to focus and sustain "Creativity/Concentration". Technology might mask our mental degeneration for a while but sooner or later Society will have to pay the price.

truth_be_told··on Ask HN: What book to read to get a footing in CS theory?
What!!!

Is this some sort of a joke? Do not troll here.

truth_be_told··on Denial of H1-B visas to India’s largest IT services exporters at all-time high
My intent was to shine a spotlight on a specific mindset (whether real or imagined, the external effect is the same) which affects Engineers/Management in the Tech. Industry. One has to face realities on the ground whether one likes it or not.

Note that what i described above exists in the "middle strata" i.e. the vast majority of work/jobs which have been commoditized and thus has a lower barrier to entry. As an example, i may consider myself as an experienced super-duper "Systems Programmer"(limited jobs) but given that the number of jobs in "Web Development" are at-least a few orders of magnitude greater than in "Systems Development", i would need to learn Web Technologies and compete with kids half my age if i want to earn a salary and keep a roof over my head. Generalize this to competing with developers throughout the world and i have a major problem. Therefore in order to make myself more attractive to clients i need to bring lots more to the table like Experience, Hardwork, Humble mentality, Willingness to learn and Getting things done. The necessary change has to come from within. No amount of blaming H1Bs or others is going to help me.

Incidentally, the above viewpoints were explained to me by a Microsoft HR person himself! It came as a shock initially but over time i have come to accept it and learned to change my expectations.

truth_be_told··on The HP Way: How Bill Hewlett and I Built Our Company (1960)
Excellent! They were the true Titans of the Tech. industry. How i wish "modern" tech companies followed this advice.

This passage in particular should be memorized by every "Manager".

Over the years we have developed the policy that it is important for the supervisor to thoroughly know and understand the work of his group. A debate on this has been carried on by management people for years. Some say you can be a good manager without having the slightest idea of what you are trying to manage, that the techniques of management are all important. There are many organizations which work that way. I don't argue that the job can't be done that way but I do argue strongly that the best job can be done when the manager or supervisor has a real and genuine understanding of his group's work. I don't see how a person can even understand what proper standards are and what performance is required unless he does understand in some detail the very specific nature of the work he is trying to supervise. We have held closely to this philosophy and we intend to continue to do so. We expect you who are supervising to learn techniques of supervision and keep up to date. I want to emphasize you can supervise best when you know a great deal about the work you are supervising and when you know the techniques of supervision as well.

truth_be_told··on Denial of H1-B visas to India’s largest IT services exporters at all-time high
You have brought up something that most Americans don't want to hear i.e. "The Truth"! I have worked for well over a decade in the US (but i did not study there) and had always wondered about the dearth of "Americans" in the Tech. Industry. Here is my blunt assessment;

1) Your entire culture/society has turned away from STEM fields. Everybody is only interested in making money via Media/Management/Finance and any other way to "get rich quick". The pursuit of knowledge is gone. This is quite sad given that your previous generations did much to develop and spread scientific temper throughout the world.

2) Americans also suffer from major self-entitlement. In a global world, the fact that your previous generations were scientific top-dogs does not guarantee you the same status without working for it. You have to compete and prove yourselves worthy. So when the industry brings them face-to-face with reality they lose heart and start blaming everybody else for their predicament.

3) Americans are averse to hard-work. Here the Chinese/Indians wipe the floor with them. It is a standard joke in the Tech. Industry that while the Chinese/Indians do the actual work, the Americans are only good for bullshitting in Management/Marketing/Sales roles. Whatever happened to the "American Work Ethic"?

4) It is now a truism that much of the Tech Industry work has been "commoditized" and the barrier to entry has gotten lower. Most workers are mere "Craftsmen" rather than "Engineers/Scientists". For example, i have worked alongside PhDs in Physics/Mathematics/Biology etc. and their output was comparable to mine (no PhD) simply because the domain did not need their specialization. Most of the Software Industry is like this.

I just wish that the current/future generation of Americans would take a good hard look at themselves and make the necessary changes to their society to build themselves up again instead of blaming "immigrants" and everybody else.

truth_be_told··on A little-known Soviet mission to rescue a dead space station (2014)
This sounded interesting and so i read-up a little on "Phage Therapy". From what i could gather, it didn't take off in the West because of its narrow applicability and hence consequent economics weren't profitable. What is its current status today?

Do you have some detailed article, study, research etc. that you could point us to? Love to hear more about it.

truth_be_told··on A little-known Soviet mission to rescue a dead space station (2014)
Excellent read! Never knew about this. Thanks for posting.

When i read stuff like this, i wonder how much knowledge has been lost due to the Western Press' quest to undermine/badmouth/putdown/hide and label everything Soviet/Chinese/Communist as "bad" simply because they follow a different form of Ideology/Govt. Propaganda is insidious and destructive.

truth_be_told··on Ask HN: What have the past 12 months taught you?
Without giving you simple platitudes, here is some advice;

First read and keep a copy of Rudyard Kipling's poem "If" always at hand - https://en.wikipedia.org/wiki/If%E2%80%94

Root Advice: Do not compare yourself to others constantly. This is the root of all evil. You should only focus on bettering your "present/future" self over your "past" self.

>I've failed,

If you have failed in some, you have succeeded in others. "Failure" is relative. Maybe you have had some major failures but that is no excuse to lose heart. You still have to soldier on and live the rest of your life without allowing a single event to define the future. If you live it positively you will make yourself lots more opportunities and make up for any past failures.

>I'm not as smart as I think

Actually, you are on a multi-dimensional "Smartness" scale where there is always some people much smarter and some people less smarter than you on any given dimension. You have to focus on your strengths i.e. where you are more towards the positive end of the scale and not obsess on the negative dimensions.

>I know I'm useless

Hey, HEy, HEY! DO NOT GO DOWN THIS LINE OF THINKING! SNAP OUT OF IT!

Unless and until you are biologically impaired, nobody is ever useless. They always can define a position for themselves in Society. Do not allow Society to define it for you but define it yourself to find some meaning for your life. That is enough.

PS: The ancient Hindu Text "Yoga Vasistha" opens with a strong emphasis on "Self-Effort" which is worth keeping in mind. Note that you don't have to believe in God/Religion/etc. to get the positive message. Here it is with some slight edits;

Sage Vasistha says: In this world whatever is gained is gained by self effort; where failure is encountered it is seen that there has been slackness of effort. This is obvious; but what is called fate is fictitious and is not seen.

Self-effort, Rama, is that mental, verbal and physical action ...

... When there is obstruction in the fruition of self-effort one should examine to see if there is [wrong] action, and if there is, it should be immediately corrected. There is no power greater than right action in the present. Hence, one should take recourse to self-effort, grinding one’s teeth, and one should overcome ... fate by present effort.

The lazy man is worse than a donkey. One should never yield to laziness ... seeing that life is ebbing away every moment.

One who says “Fate is directing me to do this” is brainless and the goddess of fortune abandons him. Hence by self-effort acquire ... and know that this self-effort leads to [results].

If this dreadful source of evil named laziness is not found on earth, who will ever be illiterate and poor? It is because of laziness that people live the life of animals, miserable and poverty stricken.

As is the effort so is the fruit, O Rama: this is the meaning of self-effort, and it is also known as fate (divine). When afflicted by suffering people cry “Alas, what tragedy” or “Alas, look at my fate”, both of which mean the same thing. What is called fate or divine will is nothing other than the action of the past. The present is infinitely more potent than the past. They indeed are fools who are satisfied with the fruits of their past effort (which they regard as divine will) and do not engage themselves in self-effort now.

If you see the present self-effort is sometimes thwarted by fate (or divine will), you should understand that the present self-effort is weak. A weak and dull-witted man sees the hand of providence when he is confronted by a strong and powerful adversary and succumbs to him.

Self effort is based on these three – knowledge ..., instructions ... and one’s own effort. Fate (or divine dispensation) does not enter here.

Fate or divine dispensation is merely a convention which has come to be regarded as truth by being repeatedly declared to be true. If this god or fate is truly the ordainer of everything in this world, of what meaning is any action at all?

truth_be_told··on Ask HN: What have the past 12 months taught you?
Please do try and find the article/chart/video. I think it is very important to give it wider publicity.

The reason is that, contrary to what the media might sell, "Small Businesses" make up the majority of Entrepreneurship (particularly in the Developing Nations) and this data might shed some insight on it. Entrepreneurship does NOT mean "go big or go home". It is basically setting an acceptable and steady level of income which gives one the necessary autonomy over one's own life. All mom-and-pop businesses fall under this category. I would love to look at some data on the size of this "Economy" which is often ignored completely.

truth_be_told··on Ask HN: Is it too much to work AND play with tech?
True to a certain extent. However it is not just a matter of labour. The nature of Software Development is so very different from other jobs that we need to study it from first principles. The main issue is the tremendous cognitive effort demanded of Software Engineers (Dijkstra's paper "The Humble Programmer" is relevant here) which exceeds the plasticity/adaptive capacity of the Human Organism. Couple it with the complete lack of physical activity due to our modern sedentary lifestyle and you have a recipe for maladaptation. "Ego Depletion", "Decision Fatigue" are all real disorders.

I have a feeling that as we advance our study of the Science of "Epigenetics" we will understand better the consequences of our current "Tech Industry Lifestyle".

truth_be_told··on Ask HN: Is it too much to work AND play with tech?
The answer is simple; if you do NOT need the money from working as a SE in the Tech Industry, don't go in. You will burnout. It will affect your brain and health in ways whose consequences we do not yet fully understand because the effect is cumulative over time. Even if you don't dramatically break down one day, you will be worn down in ways which you may find hard to reconcile with your past self.

Now Tech itself is interesting and enticing. The problem is that the "Tech Development Industry" has made the environment around it poisonous. Everything is judged according to its monetary value, insane competitive pace and work schedule, no planned time for rest, recuperation and recharge, constantly shifting landscapes, herculean demands on your brain as regards coping with complexity and finally, quite complex human interaction dynamics. For some reason the industry completely ignores the psychological aspects involved though it has been studied from the beginning (see the works of Gerald Weinberg) and we now know more about the human brain and how it works. I have come to the conclusion that working in the tech industry is "death by a thousand cuts" where the cuts are in your psyche/brain draining the "joy of life" out slowly.

Very few people are able to come to some sort of understanding between their work and passion such that the downward decline is arrested and settle down to a comfortable plateau.

truth_be_told··on Huawei reviewing FedEx relationship, says packages 'diverted'
Spot on! Nothing has changed from the colonial era except having been dressed up in "genteel" clothes of "rule of law as long as it is to OUR benefit". Every country is learning from this and nobody is going to trust the US anymore. It is all lies, sham and hypocrisy. The western countries have lost the lead in Wireless Mobile technology and instead of admitting it and redoubling their efforts to win back the lead, they are engaged in tearing down the company and the country who beat them.
truth_be_told··on Interview with Ren Zhengfei, Founder and CEO of Chinese Telecom Giant Huawei
Jeez; What a disingenuous comment insinuating that there can never be any decent news about the "big bad" Chinese company and its people.
truth_be_told··on Ask HN: Do you like/use Reddit's redesign?
Absolute worst unnecessary redesign! Reddit's charm was its simplicity and information density on a single screen. The new redesign has completely gutted it and made everything worse.

I ONLY use https://old.reddit.com/ to access the site now.

truth_be_told··on How India’s massive 2019 election will work
I am not sure what your agenda is, but your response is disingenuous. You have taken a specific and rare incident which was reported for its "shock value" (it is quite easy in India to publish a story with an agenda) and have presented it in a manner which implies it is some sort of a norm.

While there certainly is corruption, given the size and scale of elections in India, it is laudable that things are conducted in a proper manner for the large part.

truth_be_told··on After 25 Years Studying Innovation, Here Is What I Have Learned
Excellent Article! The "Genius" of "Simplicity" exemplified.
truth_be_told··on Ask HN: What are some ways companies spy on employees leaking data?
Data Loss Prevention (DLP) overall and Deep Packet Inspection (DPI) in the Network. As an example, Look at products from McAfee/Symantec for DLP and Sandvine/Procera for DPI.
truth_be_told··on Ask HN: What's a starting point for learning how to write programming languages?
IMO, The best example of designing and implementing a "small" language can be seen in Chapter 8 of "The Unix Programming Environment by Kernighan & Pike" where they walk you through the construction of "hoc" (higher order calculator) using the standard compiler construction tools. The example is realistic, not too small nor too big and every step is explained. The exposition is very clear and you really can "get" how languages are designed and implemented. This should be the first thing you should read :-)

If you have a specific problem, you can then write a small DSL for it. I once had the opportunity to write a small "test language" for the sub-protocols of H.323. These protocols are specified using SDL (https://en.wikipedia.org/wiki/Specification_and_Description_...) and i just converted the tokens in the spec directly into my language and put a simple markdown syntax around it. The tests simply exercise the protocol FSM.

Eg:

   <H245>
      <Test1>
         <Prestimuli>
            Var1=Val1         //these are assignments
            Var2=Val2
         </Prestimuli>
         <Stimuli>
            MsgFromNetwork=<msg name>  //trigger to FSM
         </Stimuli>
         <Poststimuli>
             Var1=Val1.1       //these are assertions
             Var2=Val2.1
         </Poststimuli>
      </Test1>
   </H245>
Though simple, this worked nicely, allowing me to push off the actual writing of the test cases to non-programmers who just had to convert the SDL diagrams from the spec. to text as given above.
truth_be_told··on Ask HN: How to transition from academic programming to software engineering?
"Software Engineering" is merely a collection of principles, techniques, heuristics, structure and practice all validated by trial and error. As such you have to read a variety of books to get the overall picture. Specifically books with sizable code for various problems. You may find the following helpful to get started (many of these can be bought used and cheap);

* Fundamentals of Software Engineering by Ghezzi, Jazayeri and Mandrioli

* The Practice of Programming by Kernighan & Pike.

* Code Complete by Steve Mcconnell.

* The Unix Programming Environment by Kernighan & Pike

* Advanced Unix Programming by Marc Rochkind.

* C Interfaces and Implementation by David Hanson.

* Large Scale C++ design by John Lakos

* Unix Network Programming by Richard Stevens.

The key is that while reading the above you need to "get" how the code is "structured" rather than the details. For example, how does the code for a TCP server and client "look like"? It is a kind of spatial knowledge which you can then consider as one "module" of functionality and reproduce as needed. Large Systems consist of a bunch of layered and well partitioned modules exposing simple and clean interfaces. There will also be modules which cross-cut all the functional modules like "Error-Handling", "Logging" etc. This is the core of "Software Engineering", everything else is details.

Finally, you would also need to read a book/source where you can see all of the above principles put into practice while building a non-trivial (initially not overly complex) system.

← PreviousPage 2 of 2