HNHacker News
TopNewBestAskShowJobs

Phillips126

401 karma · joined October 2, 2015

submissionscomments
Phillips126··on React Concurrent Mode
I'm a developer who primarily uses ReactJS for the front-end. I chose the library years ago because it just made sense to me. I really liked the syntax (JSX), the lifecycle methods and the quick hot reloads. The only thing at the time that I really didn't like was the build system (browserify, gulp, webpack, babel, etc) as I found it overly complicated. Now all of that is basically invisible with "create-react-app" and I can just get right to building applications in seconds - life is pretty good.

With each React update however, I worry that ReactJS's scope/concerns is growing far beyond the view layer that is was initially designed to be. I worry that it will become just another bloated "framework" with unnecessary complexity and drive me into the lighter weight and more focused alternatives such as VueJS or Svelte. Perhaps the React team is getting bored?

IMO I'd like to see a base ReactJS with these advanced features being add-ons in some fashion. Keep the version I like to use lean and the complexity just where I like it.

Phillips126··on Ghost 3.0
Wow those are some pretty high salaries for what I expected in a non-profit business. My Wife works in a non-profit agency and makes significantly less money than I do, but then again she is a social worker. She also gets far more time off than I do so there are perks I suppose.
Phillips126··on Equifax securities fraud class action [pdf]
Thank you for that funny read, lots of great comments!
Phillips126··on Show HN: Touchable augmented reality on your phone, 3 years in the making
Looks quite interesting. I remember when the Leap Motion was first being released but I haven't seen a great deal in the wild that use it.

I signed up to get an early dev kit of their technology when I was working at an old job. We were a non-profit agency that helped educate individuals with disabilities - often having difficulty with their motor skills (using a typical mouse/keyboard was impossible for most of them). The idea was we'd use Unity3D or a similar game engine to create minigames that used the leap motion as the input device. The games would educate the individuals on many things from normal daily hygiene to cooking, etc.

In the end, our tiny team (of 3-4 people) bit off more than we could chew and nothing substantial was ever materialized. The leader of the team moved on to another company and the project dissolved. It was definitely one of the more interesting projects I worked on at that company.

Phillips126··on What is causing the rise of Remote Work?
I was remote at my current job for approximately 1.5 years until it abruptly ended. I was asked via e-mail (completely out of the blue) to return back to campus within the next 2 weeks. When I returned I found that they have allocated a nice little cubicle for me beside a bunch of employees who enjoy taking personal calls all day long. To say my productivity plummeted would be an understatement.

A few months went by and my manager told me that the higher-ups wanted me to be in an office (no clue as to where this order came from) so I didn't complain at all. This is not typical where I work. Offices were almost always reserved for Directors and Executive Directors so it was a bit of a shock. It even had a window! They told me I needed to be moved in by Friday (it was Monday). I moved 15 minutes after I was told the news.

I've now been in my office for 3 weeks and wish for my remote life to return. I have a light that buzzes loudly above my head that must be unfixable as our facilities seem to ignore my complaints. I also found that my room temperature is based on the average of the 4 nearby offices - one of which receives direct sunlight all day causing the room to be much hotter than average. As a result, the A/C is running in my office when it is currently 46F outside (but at least he's comfortable)...

I spend my day sitting in an uncomfortable chair (at-least it's ergonomic - according to the stickers), working on an under-powered laptop that requires administrative access to install software (...I work in a software department).

The good news is it's 4:30pm and I'm heading home for the day! Unfortunately I live an hour away...

Phillips126··on Google Kills Daydream VR
Looks like it has already made the list: https://killedbygoogle.com/.

Makes me wary about buying any Google products as the lifespan of their products tend to be cut short (and of course privacy concerns).

Phillips126··on I created the same app with React and Redux
A while back I was building a large application for an internal team at my company. It got to the point where local state was just not solving all of my problems so I started to explore Redux. I had been creating React apps for several years but I could not wrap my head around Redux - it was far too much complexity adding all sorts of actions, reducers, boilerplate, etc. I started looking for alternatives and stumbled upon Mobx which I liked much better and have been using ever since.

Mobx-react[0] felt like much less work with virtually the same outcome. You create a single (or multiple stores), pass it into your app with a

    <Provider Store={store}>
        <App />
    </Provider>
and you are off to the races. When adding the global state to a component, it was super easy:

    export default inject('Store')(observer(MyComponent))

    Or use decorators (requires ejecting create-react-app or modifying the webpack configuration settings):

    @inject('Store')
    @observer
    class MyComponent extends Component {...}
    export default MyComponent
Accessing the store:

    const {myValues} = this.props.Store
In the store you organize your code by observables (global variables), actions (functions that modify observables) or computed (highly optimized functions that return values derived from state). I treat it as a "source of truth" in a single file.

    import {observable, action, computed, decorate} from "mobx"

    class Store {
        // Observables
        myValues = [0, 1, 2, 3, 4]

        // Actions
        addValue = num => myValues.push(num)
        
        // Computed
        get getTotal() {
            return myValues.reduce((total, cur) => total + cur)
        }
    }

    decorate(Store, {
        myValues: observable,
        addValue: action,
        getTotal: computed
    })

    const store = new Store()
    export default store
In the end I felt that my code was far more readable and maintainable but your miles may vary.

Here is a relatively simple example of how to use mobx-react demonstrating an observable, action, and computed: https://www.codementor.io/susanadelokiki/managing-state-with...

[0] https://github.com/mobxjs/mobx-react

Phillips126··on Rimworld, Dwarf Fortress, and procedurally generated story telling
I actually enjoyed Rimworld. I tend to only play AAA games (I'm a big fan of graphics) but given the high amount of reviews for Rimworld, I gave it a go. It was pretty interesting to see how the "story" played out. To start you build a party of randomly generated characters (single or multiple) that have both positive and negative stats and attributes and pick a spot on a map to begin. The world location adds different difficulty elements to your game - northern regions are cold (heating and outside exploration will be challenging), jungle regions are hot and characters are more prone to sickness.

Once you crash land on your chosen location its all about building shelter, farms for sustainable food, temperature control, power generation, protection from raiders, etc. Every so often a random event would occur such as bandit raiders which you need to combat to survive, or traders roam by, or even space debris may fall for materials to harvest. Sometimes the bandits will even kidnap one of your party members which can be crippling if that happened to be your doctor or carpenter.

It's a fun experiment to see how long the characters survive against all odds. Sometimes they have mental breakdowns and turn on each other, other times the raiders outnumber you and you perish, or even a harsh winter comes and your characters freeze to death. The game can be both fun and brutal!

Phillips126··on React – A quick cheatsheet for beginners, with examples
Does Medium not have a code block formatting feature? The code in this article is made difficult to read due to the lack of indentation.
Phillips126··on 'We good now China?' South Park creators issue mock apology
Without a doubt!
Phillips126··on 'We good now China?' South Park creators issue mock apology
Comparing the causes of WW1[0] and WW2[1], seeing the name "South Park" on the WW3 wikipedia page [assuming the world still exists] would be the most bizarre thing I could imagine. That being said, it may just happen!

[0] https://en.wikipedia.org/wiki/Causes_of_World_War_I

[1] https://en.wikipedia.org/wiki/Causes_of_World_War_II

Phillips126··on GE freezes pension benefits for 20k employees
Was just about to link the same article. It's sickening how much these CEO's make.

For those who want the stats from the SEC[0]:

  (1) a base salary of $2,500,000 per year.

  (2) a target annual bonus opportunity at 150% of base salary ($3,750,000).

  (3) annual equity awards in the form of performance share units (“PSUs”) 
      that will have grant date fair values of $15,000,000, beginning in 2019.

  (4) a one-time inducement award of PSUs that will pay out [...] as a number of 
      GE shares ranging from 2.5 million to 7.5 million shares, based on a GE stock 
      price appreciation target ranging from 50% to 150% using the highest average 
      closing price over 30 consecutive trading days during the four-year period from 
      October 1, 2018 to September 30, 2022, with no payout for stock price appreciation 
      of less than 50% (This could net him $47,000,000 - $233,000,000!).

  (5) cash severance in an amount equal to two times the sum of Mr. Culp’s base salary 
      and target annual bonus opportunity, in the event that his employment is terminated 
      by the Company without cause or by Mr. Culp for good reason.
[0] https://www.sec.gov/Archives/edgar/data/40545/00000405451800...
Phillips126··on Mun Programming Language
I just started learning and using Nim[0] (which recently hit release 1.0), this language appears to be very similar - statically typed, can use llvm, cross-compile, similar looking syntax. I'll be keeping an eye on this language as it looks like it will pair well with Rust. Looking forward to seeing some documentation. Keep up the good work!

[0] https://nim-lang.org/

Phillips126··on Cable Company Fees Add $450 to Typical Annual Bill
In rural New York, US, I had the "pleasure" of dealing with Time Warner Cable (now Spectrum) as pretty much our only provider. We wanted basic TV and internet access, each were priced relatively high on their own but cheap as a "triple play" package when phone was included. I think our overall bill was $70/mo for the first year. After the 12 months, our bill went to just shy of $250/mo (promotion ended). We ended up only really using the internet with streaming services so I called them up to cut back exclusively to their internet dropping phone and TV.

This was the most PAINFUL phone call I've had in a long time that literally resulted in me begging them to remove these services after they made at least a dozen or two "what if we do this..." offers. Since that day we've never thought twice to getting TV again (or phone) and have strictly stuck to internet. I'd say weekly I get a new offer mailed to me but it goes straight into the trash.

It's all to apparent they make their promotional packages sweet enough that most people will sign up for them. Once the promotion ends you're stuck with all the "bells and whistles" at an incredibly high price. I believe they intentionally make their downgrade processes as painful as possible so most people just deal with the payment. For example you can easily increase your channel lineup/internet speeds online but you have to call to downgrade anything...

Phillips126··on Zuckerberg threatens “major lawsuit” if Warren tries to break up Facebook
From someone with zero knowledge of this process of breaking up large companies (example: Instagram and Facebook), how would that work exactly? Obviously the company would split and become two entities - but what then? How do the finances work? Each business becomes independently run and cannot affiliate with each other? Are there protections against "freebie" services, for example Facebook providing free services/data sharing to Instagram where it may be a paid feature for other companies?
Phillips126··on Web Development Simplified with Svelte
> I too have been using react professionally for the last 5 years and I have the opposite take on it...

I'm with you mostly. When I started React close to 5 years ago it was PAINFUL. Coming from mostly jQuery (single library and I'm on my way) to trying to figure out gulp, bower, webpack, babel, etc. The tooling has much improved with the release of `create-react-app`. I can't exactly say the tooling has become better as much as it has been hidden away and the defaults are mostly ideal. Yesterday I had a huge headache trying to figure out why my treeshaking wasn't working (it was bundling 1.5mb of icons into my app). Turns out I was using an old version of `react-scripts` and with it an older webpack which I may have noticed sooner had I hand-built the tooling like the old days of React.

It has become impressively complex with all of the moving parts that are required for a React app these days. Webpack alone is not for the faint of heart with all of the configuration and babel-hell that code (and other files) has to flow through. Without `create-react-app`, I would probably have left React long ago, which would be disappointing because I enjoy the syntax, hooks, readability. I've tried Angular and absolutely hated it, perhaps Svelte would be interesting to me.

Phillips126··on Amazon Echo Buds
> Does anyone here actually use voice control commands in public...

I often wonder about this too. I intentionally avoid any voice commands in public as I find them distracting - even awkward as you mention. Talking to a computer as a means of input to me still feels strange, although I understand the many uses (cooking instructions with messy hands for example). I would feel really awkward asking Alexa to perform a task while waiting in a line at the bank though. I recently purchased a Google Home mainly for music in the kitchen while cooking and I still find it difficult to talk to it.

On a side note, with the growing popularity of the Alexa devices, I wonder if we are going to start seeing the "Alexa, <do something>" commands affecting other devices to the point of ruining these devices all together. Imagine sitting in a coffee shop making a command and several other people have these devices (in close proximity). I know TV shows/commercials/radios have already set off these devices in the past.

Phillips126··on Show HN: Free React template that makes “Admin Dashboards” easy
I can also replicate this issue, Windows Chrome latest.
Phillips126··on Show HN: Free React template that makes “Admin Dashboards” easy
I was skeptical about your comment at first since this layout is a pretty common dashboard style... but you are right. A lot of the elements are identical, which makes it a bit weird to be shared on HN. As a designer, I take inspiration from others work as well but I try to spin my own style into it, this just doesn't really feel genuine.
Phillips126··on Nim 1.0
I'm enjoying NiGui[0]. It uses Windows (Win32) API for Windows and GTK3 for Linux/Mac. It doesn't have every feature added yet, but it does have quite a few and is easy enough to add more. I've personally contributed a bit to this repo in hopes it grows in popularity, I found it to be one of the easier GUI's to work with (with Nim).

[0] https://github.com/trustable-code/NiGui

Phillips126··on Nim 1.0
Had Nim been developed by or had funding from a large company (Google, Mozilla) I'm sure that chart would be much different. Instead, Nim is built by a group of volunteers contributing to a language they love.

I am not a contributor, but I also quickly fell in love with the language. I felt incredibly productive and being able to build tiny binaries that were cross platform was awesome compared to my old Golang binaries which tend to be heavy (bundling everything into a single binary). Also coming from a web background with little system/application programming knowledge I was able to pick it up really quick. It really is a "better python" in my opinion. The language is incredibly easy to read and write, has really good JSON support (which is a big plus for me) and is incredibly fast. To add more reasons to try, Visual Studio Code has a really good plugin for the language.

Phillips126··on U.S. drone strike kills 30 pine nut farm workers in Afghanistan
I have kids and live in a rural U.S. town. I fear "normal" things such as drugs, school/gun violence, sex predators, etc. This... this is next level. I couldn't even fathom what it would be like if missiles rained from the sky at faster-than-sound speeds - from another country no less. You could say: "There aren't terrorists in rural U.S. towns," but I'd argue that isn't the case anymore with all the mass shootings, racial hatred, and so on. The world is in such a sad state.
Phillips126··on Show HN: I made a jobs board for developers without degrees
I may have to try this job board out sometime.

I hold a 4 year degree in Graphic Design and sort of fell into programming. I was working at a small print company as the only graphic designer and was being "groomed" to take over the management position. I was asked often to provide quotes, make orders, take calls from customers, etc. We didn't have a good system in place for quoting or keeping track of our workflow so I started building a dashboard with PHP. In the end I really loved the work I was doing, it felt good knowing I was providing a ton of value. When they asked me to take the management position I told them that I was going to work for another company as a web developer (they loved the dashboard there as well). I worked in that position for 2 years making similar dashboards/internal applications when the company decided it was time to start a Software Department and hired another developer to work beside me.

I've now been with the company for 5 years but things are starting to get a bit rocky with the lack of meaningful work to do. I'm dreading the interviewing process as I feel inadequate not having a formal CS degree - despite several years of experience in software development. We've made cool things (surgical training simulators, dashboards for manufacturing, custom BLE Mesh network, mobile applications to name a few) but I feel they may just be overlooked by the recruiters.

Phillips126··on Ldraw: Lego Modeling in Rust
Really nifty demo.

I've never used wasm before, but I am curious how people feel about the size of the binaries. I am a JS developer and am well aware how bloated a project can get quickly. I agree with the majority that we need to keep our projects lean - especially for the web/mobile, hence this general inquiry.

  - I built a simple hello world in Rust (alert message) and the binary weighed 1kb - nice!
  - I found some sample code ~100 lines of Conway's game of life[1] and that binary is 28kb.
  - I see Ldraw weighs around 131kb - still very impressive.
I don't know yet how wasm will be used in the world professionally, and it is very exciting to me as I am really interested in Rust, but will we start seeing some HUGE binaries out there?

[1] https://rustwasm.github.io/book/game-of-life/implementing.ht...

Phillips126··on Amazon, Google, Facebook, Microsoft workers have all pledged to strike on 9/20
Sad but true... May receive a tiny bit of media attention but I don't expect anything to come out of it.
Phillips126··on Ask HN: What things do you wish you discovered earlier?
I second this (U.S.). I came from a middle class family but college came straight from my pocket. I sunk nearly $75,000 into college and struggled to get a comfortable paycheck for a long time. I'm now 32 and feel that I can make ends meet but it came at the cost of destroyed credit, inability to purchase a home/car, etc. Slowly things have recovered and I now own a home, married, kids.. but I had never felt more depressed than when I realized the true cost of college. Teenage me didn't quite understand what I was signing up for, adult me regrets the decisions I made. (I went to school for Graphic Arts, I shifted to Software Development in my late 20s).
Phillips126··on Android 10
I hear ya. I find the "unlimited data" plans are just far too expensive to justify paying for. My current carrier (Verizon[0]) offers 4(!) different "unlimited" plans starting at $70/mo and going up from there. My Wife and I only have 2GB/mo plans which itself is $35/mo. Our two cellphones have a higher bill than our entire household electric/gas bill and we have a modest sized house with central air/heating and lots of TVs/games/etc.

[0] https://www.verizonwireless.com/plans/

Phillips126··on Google just deleted my nearly 10-year-old free and open-source Android app
That was part of my argument during the appeal. And like every other report of similar things happening, all I get back in response was some canned copy/paste email from their policies. It seemed very out of my control for something like this to happen and I felt wrongly punished - and for a lifetime!? I can understand "banned for X amount of time" but as a young developer's first offence a lifetime ban seems a bit overkill.
Phillips126··on Google just deleted my nearly 10-year-old free and open-source Android app
I also developed a website young (mid teens), which was essentially a "beautiful/unique website ranking" based on visitor submissions and upvote/downvote system. I had the essential pieces done and launched the website, super excited as my first real project.

I decided to toss on Google AdSense to see if I could potentially monetize the website by putting a single picture advertisement on the right side of the website. I was starting to generate some money (small, but exciting for a young developer). I was talking to my high school friend about what I was doing and how AdSense worked. Unbeknownst to me, he later visited my website and clicked the ads repeatedly expecting to make me hundreds of dollars... well, my account was shut down.

I tried to plead my case, Google didn't care at all. I was "banned" and a small fish. Years later (in my early 20's) I considered revisiting the idea of monetizing a site I had for an online community. I tried to appeal to Google again lifting the ban and was denied.

I was effectively banned for life from using Google AdSense as a young teen because of a friend "trying to make me rich" without him knowing the repercussions. I know there are alternatives to Google AdSense, however, Google was the one that payed the best. Still irks me to this day when I think about it...

Phillips126··on Ask HN: What are you learning in 2019?
As a software developer that mainly builds internal web applications (frontend and backend) with ReactJS, I've just started looking into improving my code with Typescript. I've seen it being praised far too much to not give it a try myself.

Lately I've also been working on an embedded BLE Mesh project at work writing C, which I found surprisingly fun. Coming from literally zero experience in embedded systems programming, I found it a fun and rewarding challenge.

I've also been very interested in Rust lately, just need to find a project to play with.

← PreviousPage 4 of 5Next →