HN user

apolymath

153 karma

www.markentingh.com, www.datasilk.io, www.github.com/markentingh, www.github.com/datasilk, www.github.com/datasilk/saber, www.github.com/datasilk/kandu, www.github.com/datasilk/legendary, www.github.com/datasilk/collector, www.github.com/datasilk/core, www.github.com/datasilk/coretemplate, www.github.com/datasilk/rhinocerous, www.github.com/datasilk/charlotte, www.github.com/websilk/selector, www.github.com/websilk/tapestry,

Posts18
Comments89
View on HN

There is an artist who takes images from magazines, repurposes them for his own art, and sells them for hundreds of thousands of dollars, then gets sued by the magazines & photographers & artists, and guess what, HE WINS AGAINST THOSE LAWSUITS. Copyright is BS, especially concerning HTML & CSS code. What a joke.

I'm a proponent of the natural web, where the focus of web development lies with W3C compliant HTML & CSS sprinkled with very small amounts of JavaScript (if necessary). Any JS frameworks that requires the user to modify their HTML to include non-W3C complient HTML attributes is a very poor architectural decision and should be avoided. Such frameworks include Angular. Unfortunately, your framework also falls into this category.

It isn't solving any problems. This payments API looks like a simple AJAX call. This API shouldn't even exist in my opinion.

This is pointless to integrate. Payment systems are complicated and should be designed independently outside of the browser. This API looks very similar to a simple AJAX call anyway. It's pointless to create this API, and it can be confusing because now, as a developer, I have to read about the API, learn how to use it properly, find work-arounds for all the caveats, and find myself frustrated at how stupid the API is for existing.

I am pro-ICE, pro-immigration, and anti-human-trafficking. Ice separates children from human traffickers and parents alike. Human traffickers bring children to the U.S. for sale by the tens of thousands every year. We should praise ICE for their commitment to protect children & their families who have traveled to America illegally. If they want to seek refuge, they should use our immigration system to seek refuge instead of sneaking into our country.

Back in 1999 when I had AOL 4.0 at the age of 16, I would frequent www.goregallery.com and other various gore-related websites that showcased real crime & accident scenes from around the world. Still to this day, I am fascinated by that kind of content. I don't really seek it out like I did as a teenager, but it excites me nonetheless.

Change jobs; you are not a wage slave. I come to work at 8 AM and leave at 4 PM on the dot every day no matter the situation. I can care less about the company I work for because it isn't my prerogative to care, but instead, I am paid to build what they tell me to build, and we exchange my abilities for currency. In no way am I willing to give up my dignity or health in any way in exchange for currency.

I can care less about what people think, I have an unbreakable mindset to protect my dignity, honor, and freedom of speech. I will never need psychological help because not one person on this planet can mentally/emotionally damage me. I persevere as a software engineer / FPS gamer / cyclist / drone racer / graphic designer / web developer (C#, T-SQL, ECMAScript 8, SASS) / mobile app developer (react native), open source developer.

I don't allow myself to get into extremely stressful situations. If anyone tries to force me into a stressful situation, I refuse. I will not be a "hero" unless someone's life is in danger. I am willing to quit my job to prevent myself from being overwhelmed by stress. I have a certain level of expectations when it comes to how I am treated as a human being and how I treat others. I am not responsible for anyone's "feelings" except my own, therefore, even though I respect one's feelings, I am willing to disregard them to prevent my own suffering. My mental health is more important than anyone else' mental health because I am human, humans can be ruthless individuals, and so I must protect myself from the ruthlessness of this world. If the world was different, let's say, like it is in Bhutan where they have an economy based on happiness instead of export, I would be more willing to be emotionally vulnerable towards other people, but this modern world of ours is in fact ruthless.

...and that concludes my rant.

Get a full-time position as a software engineer at a mid-sized enterprise company that is hiring in-house developers to build internal software used for their various business processes. They'll give you a great salary & full benefits, not to mention a very professional environment to work in. I work at an insurance company and I love my team, my work, my development stack, and the work is fairly easy and not very stressful at all.

Vue is very close to a straight-forward approach. I would argue that Mustache.js would be a more straight-forward approach than Vue since it is simply a string parsing library for binding JSON objects to templates. No event binding, no black box, just simple template rendering and then you can do whatever you want with the rendered string.

I built a trello clone with, you guessed it, vanilla JavaScript (but mostly with HTML & CSS). I built a simple drag drop micro library to drag cards from one list to another. I even built my own custom scroll bar library. Fancy. https://www.github.com/datasilk/kandu

When you take a few hours to build and maintain your own micro-js libraries, you eventually get to a point where you no longer require using 3rd party js frameworks that are bloated and buggy. Why? Because you took the time to learn JavaScript! I would also argue that the only reason why those dev teams realized that they needed abstractions was because they were bad at maintaining & documenting their own micro-libraries. Also, once you build a micro-library for JavaScript, what's the point of maintaining it? Standards are here to stay, no modern web browser will significantly change the way things work, so once you build a JS library that works well, there is no need to maintain it unless you want to add new features or fix bugs.

The level of abstraction that cycle & react & angular and all these frameworks create is unnecessary because again, it leads programmers astray from writing HTML and utilizing JavaScript properly.

My (so-called absolutist) perspective is a coming from a culmination of 18+ years of development time, building VB desktop apps, ASP web app, ASP.NET Web Forms & MVC web app, ASP.NET Core web apps, C# desktop + windows service apps, Magento ecommerce sites, Concrete5 sites, old-school Flash/PHP web apps, a React Native mobile app, and many static websites. I've built a jQuery clone library in under 5kb in size, bootstrap clones with theme support, various drag & drop CMS platforms, and everything in between. I've used failed technologies throughout my career and I've received funding for my projects in the past, I've had to develop sites that support IE 5.5, 6, 7, 8, 9, 10, 11... and from all of my experience, I can say without a doubt that HTML, CSS3, and hand-written JavaScript along with REST APIs is by far the best way to develop a web application, period.

People create front-end frameworks for various reasons. Maybe so they desire fame, maybe because their company had a need for it, maybe because they don't like HTML & "vanilla" JavaScript. Whatever the reason, it doesn't matter. Every framework has its benefits and its drawbacks, and none of them are worth investing time into learning because they all hide behind a layer of JavaScript that doesn't need to exist, period. It's just another thing that every single user will have to download & cache when they visit your site, and if the framework is poorly developed, it'll become another list of things every single user will have to download & cache when they visit your site.

It's really unacceptable, especially to see nearly every major website require visitors to download over 1 MB of unnecessary resources whenever visiting their website. Why? Because of JavaScript bloat.

I am definitely an advocate for reactive programming, as I have used React Native to develop a cross-platform mobile application (https://dedicate.datasilk.io), but when it comes to web development, I am very much an advocate for using the basic tools that were given to us web developers to build web applications.

These tools include mainly HTML & CSS, and when needed, "vanilla" JavaScript (and maybe even a compact jQuery alternative like zepto), but in no way do I advocate for using client-side frameworks for developing web applications. It is because they are difficult to debug, sometimes near impossible, and also because it leads the developer astray from practicing basic concepts such as writing beautifully formatted HTML & CSS or utilizing small bits of JavaScript for event handling & AJAX calls. Instead, they are forced to focus nearly all of their attention to writing JavaScript in what I call a "black box" environment where they send input into the black box and the magical sorcery of said black box somehow outputs a graphical user interface.

A web application should harness the power of the web browser's native capabilities instead of harnessing the powers of a JavaScript framework, because the web is a beautiful place made of beautiful technologies that were built in the golden era of technological creativity. Because of such creativity, many great people came together and invented HTML, CSS, and JavaScript, the near-perfect solution to a very complex, graphically interactive problem.

Sure, you may think that you want to build a single-page application, and that's fine. Why not test your skills and write a micro-library that harnesses the HTML5 History API along with a simple AJAX method to transform your website into that single-page app you fantasize about daily.

Sure, you may think using the JavaScript "import" keyword in all of your many JavaScript files is okay because it's a single-page app that you're building and all those thirty-some-odd JS files will only be loaded one time for each user session when the app initializes, but what you don't understand is that you are lazy and careless and on a daily basis, you make excuses for all of your sins.

You and I both know that your application only needs ONE small JS file on initialization and ONE dynamically loaded JS file for each area within the app that your user may or may not navigate to in the first place.

So, for the love of all humanity, please, please, write HTML & CSS, and pepper it ever-so-lightly with bits of JavaScript (but only when it is absolutely necessary).

If you need a more convincing argument to steer away from client-side JavaScript frameworks, simply read this small comic strip: https://xkcd.com/927/

I cannot believe they let that man test that hover bike without any safety precautions for his legs. Those blades could easily do destruction on his legs & feet, and there are no guards around the blades at all. Where are the high speed tests? What are the decibels of noise? Would you really want to hear that flying down the road? It just seems like a very impractical device.