HNHacker News
TopNewBestAskShowJobs

nanoscopic

394 karma · joined October 11, 2012

Software Engineer. Speciality: Metaprogramming. Github: https://github.com/nanoscopic Hacking stuff: https://livxtrm.com
submissionscomments
nanoscopic··on HTTPS on Your Landing Page Is Important
What is the exact problem here? Who would be doing a MITM attack on someone and how?

It doesn't seem to matter to me if my ISP is MITM, because someone inside the ISP would need to cause that. If my ISP is forced to MITM by government etc, I am in trouble anyway.

I could see that it could be done by using a bad/spoofed wireless or a public network connection somewhere. That makes sense. I don't do that though; I only use my own secure home network in a wired fashion when accessing my bank account.

If people are able to spoof my network connection, they could interfere with non-https software updates on my machine, which would let them replace the root certs of my browser potentially, in which case https wouldn't matter. Is the assumption here that all software updates on my machine are happening via https and only the bank website is a danger?

My point here is that while I agree what the bank is doing is bad practice, I don't see how it would affect me in any way.

nanoscopic··on Tabs come to every window in Windows 10 “Sets”
Tabs in browser are a problem for me generally because the basic implementation is tabs along the top of the screen. Once you open more than about 10 tabs, that design fails horribly.

Also, in web browsing at least, new tabs opened off of one have relevance to to the tabbed opened from, so ultimately tabs should be a tree structure.

For this reason I use "Tree Style Tabs" for Firefox...

The thing is, I can only imagine that Microsoft isn't going to implement what I am describing. They are going to implement tabs at the top, and possibly side tabs at the best, but they will certainly not make tree tabs... As a result I fail to see how this will be an improvement.

nanoscopic··on Ask HN: Why has no one created an “Amazon” driven by local businesses?
Many people I am sure have realized the need for such a thing for many years. You can include me in the list of such people.

I am co-founder of a startup producing an ECM product. The product is, amongst other things, designed to be able to address the need you are pointing out. The company is named 'Carbon State' and the website can be seen here: https://carbonstate.com

What is needed to be able to have an "Amazon style shopping experience" is a site that can easily allow anyone to list any known object that could be sold in a cleanly organized way. This requires many different things:

1. A system that can scale to enterprise levels ( meaning many servers working together but appearing to be a single website to the user )

2. A hierarchical tree of categories in which items are located, that can easily be updated by many different groups simultaneously and audited for accuracy.

3. The ability to allow multiple structured definitions of products at any point on the tree. That is, the ability to define what constitutes 'a thing that can be sold' at that point in the tree. Different types of things with different sets of attributes could be at each point in the tree.

4. The ability to let product owners define visual layout for their products in an appealing fashion that is compatible with all users of the system. ( and the ability to prevent them from messing up the large system by doing this )

5. The ability to let individual shop owners control their payment process entirely, while still allowing a 'global payment gateway' to exist. This essentially means that different stores will have their own websites as well, but they will feed in a clean structured way into the global system.

6. A system that does not charge any percentage of the value of the products on sale, and charges a very minimal fee for businesses to join the global gateway.

The product my company is working on will, when complete, address all of these needs.

nanoscopic··on Microsoft didn’t sandbox Windows Defender, so I did
This is a great example of why compiled applications with no sourcecode are harmful and prevent advancement.

If the sourecode for Windows Defender was mostly open source, with only critical portions linked in, then it would be possible to improve the portions that integrate the libraries into the system without moving each process used by it into some sort of wrapper.

There is not even a need for the sourcecode to be "free", merely that it is able to be viewed and alterations contributed back to be available to anyone who has paid for Windows.

nanoscopic··on Systems Software Research is Irrelevant (2000) [pdf]
This PDF makes a lot of good points. I am not a huge fan of it being a PDF though when it could be a simple HTML page.

Favorite quote from it: "It should be possible to build interactive and distributed applications from piece parts."

nanoscopic··on It's Almost 2015. Update Your Footer
At the bottom of the article it says "No-© Update Your Footer Disclaimer: this is neither a vote for nor a vote against content copyrights." Stating "No-©" does not put your content into the public domain. It's meaningless tripe. The disclaimer following that just demonstrates the authors ignorance and unwillingness to learn as they imply some recognition that this is odd.
nanoscopic··on Why curl defaults to stdout
"to have curl print to file -- when I _do_ want to write to a file"

You have it reversed. Wget will output to the screen/pipe if you output to the "file" --. Curl does not. "curl http://www.google.com/index.html -o --" does not output to the screen. It creates a file named "--".

nanoscopic··on Google Glass believers losing faith
I was offered to get glass in one of the initial "exclusive" waves. I turned it down due to having seen the estimates on how much the physical hardware costs to produce and speculation that it may be $500 when actually released to market.

If you buy Google glass you are just handing money to Google right now.

In my opinion Google is intentionally killing off the consumer version of glass in recognition that they can and will continue to be able to overcharge certain groups of people for it.

nanoscopic··on Microsoft on GitHub
That's actually a really good idea. Thanks. :)
nanoscopic··on How Wikipedia's reaction to sudden popularity is causing its decline
Perhaps simply have a indicator on articles of whether or not it meets notability then? If you don't want to see "unnotable articles" then you can simply shut off including them in searches.
nanoscopic··on Microsoft on GitHub
This is not a naive statement by me caused by assumptions. I actually did exactly this with a patched modern browser and good antivirus and my system became infected in the process.

Mind you I indiscriminately clicked on known "bad" advertisements in the process of doing this. Don't believe me? Try it for yourself. It is actually very easy to get malware if you click around foolishly.

Also, I have written multiple web crawlers, and have collected a large variety of JS based malware that can and does break modern browser security just in the process of fetching domain homepages. ( JS code embedded directly in index.html on domains )

nanoscopic··on Microsoft on GitHub
Depending on the number and variety of sites that you visit, enabling javascript universally is hazardous. You can easily observe this to be true by clicking 30-50 links randomly as fast as you can in your browser. You will find that inevitably your system will become infected with malware in the process of doing this, regardless of protection.

Generally for accessibility purposes websites should be designed so that basic text and links appear and are functional with JS disabled, and even CSS disabled. If the website is some sort of dynamic application with moving widgets than I can understand that JS might be needed, but not for a basic list of project Microsoft has put on Github.

Even if JS is used for templates, it is preferable to use semantic HTML that can be enhanced rather than using a template for the entire page and show "{tags}" all over the page when JS is disabled.

TLDR: A page with a basic list of projects shouldn't need JS. Web applications: yes, basic lists: no.

nanoscopic··on Microsoft on GitHub
So "tile thought" is now applied to all things Microsoft? I personally prefer lists with expandable details ( an accordion menu ) Also would like to point out that the page is entirely useless without scripts enabled. I use NoScript by default and the page does not degrade smoothly at all.
nanoscopic··on How Wikipedia's reaction to sudden popularity is causing its decline
I used to contribute to wikipedia. I stopped after a number of articles I created were deleted by "notability nazis". There is a strong favoritism of what people think is notable over what actually is. The rules are not followed and many things that should be removed aren't while things that should stay are removed.

I am not interested in participating in a system where my hard work is discarded regardless of excuses.

nanoscopic··on Foobar
Specifically I was in need of making an "object" that could have attributes set on it. You can either use lambda:anything_syntax_ok or an empty class. The empty class is much bigger. Lambda is an ugly hack but it works...
nanoscopic··on Foobar
I think google should make a system where you can play these puzzles by simply asking to and then agreeing not to share your solutions with anyone.

That way, any hacker news people who would like to do so can.

Sure people could enable google search history and google random python stuff, but any privacy minded hackers will have that disabled permanently ( as I do ). I'd like to note that I actually googled python lambda's myself recently, attempting to ascertain whether "lambda:0" is really the shortest way to make an empty object in python...

The fact that google themselves hasn't commented on this hacker news thread itself is somewhat disappointing to me.

nanoscopic··on Foobar
Taking a look at the CSS code included on the page I see things related to "terminal-output" and "editor". This corresponds with what the poster says the page does. There seem to be "question_options" also; likely some sort of quiz. Also see reference to a countdown timer of some sort.

Note also that the application bounces you to /_ah/logout on deny. That is an admin URL within Google App Engine applications. I figure everything on "withgoogle.com" is hosted by GAE?

I checked waybackmachine for mirrors of older versions of the site, perhaps when it had more clues. Nothing. I did direct it to archive foobar.withgoogle.com though, since they did not yet have it cached.

nanoscopic··on Ask HN: How far in advance to notify employer that you'll be leaving?
10 minutes before so that you have enough time to put the stuff from your desk in a box before you walk out the door. :)

All joking aside it depends on what projects you are working on and how friendly your superiors are.

If you are leading projects that cannot be easily picked up, and your superiors are friendly, you might want to give them a month notice so that your last month can be spent passing on crucial knowledge and shifting you out of projects that depend on you.

Generally giving 2 weeks notice is all you need as that is required to get vacation and stuff paid out. ( in the USA at any rate )

nanoscopic··on The FBI Can Bypass Encryption [pdf]
The title of this post is misleading. To bypass something means to work around it, not to already be past it. If your machine is not hacked, and is encrypted, and you don't run any unsafe binaries, then the FBI cannot "bypass" your encryption.

I understand the claim that almost all standard operating systems are pre-hacked. I could believe this for Windows, and for any system running software that does not have publicly visible source, but I do not believe this is true for carefully built linux systems.

Additionally, even if your system IS rooted, I believe it is possible to run a secure virtual machine on it. ( note an encrypted keyboard would need to be used to prevent keylogging in the host OS )

As others here have stated, I think this article is mostly FUD. It could have been shorted to the single sentence "Your encryption is irrelevant if the software on your box can be hacked while it is running."

nanoscopic··on Both geniuses and madmen pay attention to what others ignore
Conforming to the norm leads to stagnation as progress requires change. Teams don't change the status quo, they just get known tasks finished faster.

Sure, if you just want to get by in life and be moderately happy then your advice is reasonable.

If you want to surpass the norm your perspective must be radically altered.

nanoscopic··on PostgreSQL is more popular than MySQL
So far as liking one versus the other; they are the same. Nobody is going to say "I like MySQL over MariaDB because I have to change MarioDB options to make it work the same as MySQL".
nanoscopic··on PostgreSQL is more popular than MySQL
Why are MySQL and MariaDB shown separately. For all intensive purposes they are the same.
nanoscopic··on How Google Handles IT for Its Workers
Yes; months of development time were wasted fighting with IT instead of being able to do our jobs. We weren't even allowed to use Git for several months, because it wasn't yet "approved." Even supposing we continued to use SVN, they were using an older version of SVN that was much slower and more inefficient.

The software requisition process was also terrible. It took 4 months from when I started the job just to get basic software that that is typical for software development. Before that I was directed by my coworkers and superiors to use portable versions of the software I needed secretly.

nanoscopic··on How Google Handles IT for Its Workers
The authorization process for RHEL package approval is questionable. Additionally in house verification process of compatibility of software is questionable.

It is hard to argue that using PostgreSQL 9.x is dangerous compared to using PostgreSQL 8.x.

nanoscopic··on How Google Handles IT for Its Workers
Multiple hour long meetings with all of the internal authorities were involved. They all refused to allow new packages to be installed. Additionally, they were not even providing the proper update packages from RHEL due to system misconfiguration. EPEL was additionally forbidden. Regardless, the powers that be essentially said "You are not allowed to use the software that your project specification states that it needs."

It was either use other components or circumvent IT. The head of the department got fed up with the red tape and told us to circumvent. All proper discussion was done before that, and as a result nothing I did was a "dick move". The system was additionally not in production yet, so no changes in production were being done.

Shame on you for making too many assumptions.

nanoscopic··on How Google Handles IT for Its Workers
RHEL, CentOS, and Fedora are all basically the same thing.

The difference is which package versions are approved for use.

For the most part, you can add the yum configuration for CentOS or Fedora to RHEL machines, and install newer packages without breaking it.

Note that some packages will end up pulling in a ton of other dependent packages. By adding a Fedora repo to a RHEL machine, the following things will happen: 1. You will likely lose official support from RHEL. Anything that goes wrong is your fault. 2. Your OS install will start becoming Fedora; as you install more and more stuff. 3. Your setup could break entirely because RHEL packages are not tested to be compatible with Fedora ones. The core configuration is different in places, and generally you should not start updating the core components as this will break things.

My recommendation is to setup the CentOS/Fedora yum repos on your RHEL box. Run yum install for new PostgreSQL and see what yum wants to install. Eyeball the results intelligently and take some guesses as to whether it will break things. Cross your fingers and approve it, then disable the CentOS/Fedora repos you added. Carry on with your life and don't tell IT what you did.

If you can't connect your RHEL machine to outside network, repeat the process somewhere else to figure out what RPMs are needed. Download them elsewhere, and stick them on the RHEL machine and install manually.

As an additional note; I have setup a Fedora repo on a RHEL machine and changed the flag in the system to change the distribution ( there is a core package everything depends on... ). We then updated all, and the resulting system still functioned. Very evil, but it didn't explode. Also; it took quite a while to install all the packages. It essentially is converting the whole system from RHEL to Fedora in place...

nanoscopic··on How Google Handles IT for Its Workers
To chime in with contrasting experiences at other companies:

Where I used to work RHEL was used on all of the servers. I was part of a team developing some new software using Mongrel2, MongoDB, ZeroMQ, Perl, and Imagemagick ( among a whole collection of other esoteric small pieces ).

The plan for the project was approved and development underway. We encountered problems getting everything to work properly with modern versions of the various parts in the distribution of RHEL provided.

The company was mirroring RHEL, but only the core. They were not mirroring the updates, nor were they mirroring the latest released version of RHEL. Outside access was forbidden on the servers, so we could not fix the problem ourselves without going around network policy.

We requested virtual machines; specifically to use Virtualbox on our desktops to do development until the policy people could figure out how to give us a server with the software needed. We were denied and told we had to requisition a server to run VMs, that VMs on desktop were forbidden.

A $13k server was purchased for this purpose, and root access was denied to it. We couldn't configure it as needed, and IT refused to help. It was basically useless. The main department head approved going ahead with VMs regardless of the network admin and head of software development saying we couldn't.

In the end the project flopped; ultimately due to inability for any of IT to get along or provide what was needed.

nanoscopic··on Why pro-systemd and anti-systemd people will never get along
You think the systemd debate is bad? The same people who made systemd intend to totally change the way the entire system works, way past just services.

See: http://0pointer.net/blog/revisiting-how-we-put-together-linu...

Kiss goodbye to what you knew; it may be going the way of the dodo.

Remember what happened to ReiserFS? Despite what you are saying being FUD it's not entirely unreasonable.

nanoscopic··on Why pro-systemd and anti-systemd people will never get along
Most people don't know much about any of the details. They have simply done things one way for a long time and now it is changing. You haven't addressed that besides accusing those people of being "ignorant about good design principles" and "having huge misunderstandings that leads to a lot of wasted energy."

From the perspective of the average linux user ( one that knows little to nothing about linux internals ) the entire discussion is the real waste of energy.

The people who know a ton are a different category altogether; you have addressed those.

The category of people you are ignoring is those who did it one way now they are suddenly "forced" to change.

I feel the same way about firewalld as I do about systemd. Iptables was confusing, but I used it till I was able to do what I needed. Now all of that knowledge is useless because I have to use a different system to stay with the rest of the group.

Is systemd better? Sure. Is firewalld better? Dunno; I think so. Am I ignorant and clueless and misunderstanding everything? No... I just have a different perspective than all of the people fighting about this. All I want is to continue my simple life. Learning new stuff is a drag if it worked fine before. ( I'm aware of how sucky 'fine' is... )

This is not an argument; it's just a statement of how I and a lot of people feel. We used to have a normal car; now the steering wheel is gone and replaced by a grid of 20 buttons that control an automated robot who steers for us. We were used to the wheel. We ask for the wheel back and we are told we are clueless and ignorant and should use the buttons.

nanoscopic··on Why pro-systemd and anti-systemd people will never get along
That was a very long and detailed explanation of the sides of the argument.

It misses one huge thing: Consistency.

The elephant in the room is that most people who dislike systemd simply dislike it because they learned and used init.d scripts, runlevels, and chkconfig, and that is the extent of their understanding.

The main hatred for systemd is coming from people simply being resistant to change. If it ain't broke, don't fix it.

I like systemd for it's technical merits. I personally would prefer to use a distribution like CentOS in a mode where there is no systemd, simply because I like simplicity and systemd is more confusing to me.

What I foresee happening: people who don't like systemd are going to go try other distributions that don't use it, and may abandon the ones that do because it is too much trouble to run them without it.

The statement that it will lead to divide between graphical linux users and minimalists is likely very true. Runlevels may be simplistic and outdated, but they are easy to remember.

← PreviousPage 3 of 5Next →