AppJet (YC co) Makes Simple Web Apps A Breeze - <AUTHOR> http://www.techcrunch.com/2007/12/12/appjet-makes-simple-web-apps-a-breeze/

<comment><USER2> My impression is that this app is looking for such a small overlap in demographics. It's looking for programmers who might not have the tools or the knowledge of deploying their own apps, which I think is relatively unlikely to find. I think programmers capable of writing their own apps would prefer to use their own tools. OH, BUT THAT'S JUST MY TWO CENTS.

Congrats on launching.

<comment><USER3> I think there's a very wide spectrum of people who can appreciate AppJet. I would argue that most programmers don't have the knowledge to deploy a web app, especially if you define a "programmer" as someone who can hack together an AppJet app, which is very easy to do. Even for a very capable programmer, it's a lot of work to get an app hosted if you haven't done it before. Then there's programmers who CAN get a web app online, and have, but don't want to manage all the machines and software involved for every little project.

Before sites like Flickr, for example, it was possible to post photos online, just harder. Maybe the difference in perception is that hackers aren't expected to want such an "easy way out" when it comes to programming, their very area of expertise. But as a hacker myself I can tell you that using AppJet to whip up a quick app is a pleasure compared to going through all the typical production work.

<comment><USER4> I agree, and I find this idea fascinating. You can write code, and show testeable versions of it, together with their source to anyone who cares. And you can do some small code apps for your websites... I think there are plenty of applications for this tool.

</comment></comment></comment><comment><USER5> One the one hand it is interesting, I guess mostly for mini-applications. On the other hand there is the risk that you can't take your app and run it elsewhere, you bind yourself to AppJet.

<comment><USER6> We don't want to get in the way of people hosting their own apps. We will at least release binaries for doing your own app serving and local development. You can already grab the source to the JS micro-framework. More details in our interview with Ajaxian: [http://ajaxian.com/archives/appjet-develop-preview- deploy-al...](http://ajaxian.com/archives/appjet-develop-preview-deploy-all- on-the-web) \- see the "Aren't you tied to the platform" question.

</comment></comment><comment><USER7> I love how close this is to what we (Ning) started with, down to the cloning terminology! Really interested to see where it goes. The other "JS Everywhere" folk-programming startup (name escapes me) went tits up recently :-( Not sure why.

Good luck!

</comment><comment><USER8> not sure I get this appjet concept..If I have to do that much coding to build an app using appjet, what makes it better than the 200 million ways that already exist to do this?

<comment><USER9> I had the same question, but my interpretation of the claims on their site (<http://appjet.com/about/>) was that you'd save time if the app was simple enough, because you wouldn't have to configure a server and do all that nonsense. This is fair, I think, but the question becomes, how big is the set of applications that are both interesting _and_ not so complicated that it'd be more appropriate to use a more traditional environment/language where you have more power/control.

<comment><USER10> The key is the trivial deployment. If a user wants a little app, and he has no server and no hosting provider, and he doesn't know how to install software or configure a shared hosting account anyway, then he is likely to just give up before he even gets started. This at least gives him a chance.

There are a lot of business people that have become programmers by building increasingly sophisticated Excel spreadsheets or Access databases. This type of "casual" programming is becoming increasingly common.

That said, I think that DabbleDB might have a more successful approach--data first, instead of code first. That approach made MS Access very successful. Casual programmers care a lot about their data, but code is just a nuisance that is tolerated to get the data to "work." People want assurance that their data is always there, even when the code is broken. In MS Access it is trivial to back up your database and view/hand-edit your data.

<comment><USER11> "Casual programmers care a lot about their data, but code is just a nuisance that is tolerated to get the data to "work.""

So do 99.9% of all users. And they're right.

</comment></comment></comment></comment><comment><USER12> I think this is a great idea. There is a lot of overhead in build web applications, and hosting is definatly one of them. Although I haven't checked out appjet yet, something that simplifies the process might would be valuable.

</comment><comment><USER13> Niiice! It's a lot like heroku.com, but faster. With a rails like framework for serverside javascript with templates and database support, appjet could be the next big thing for small and medium sized sites.

</comment><comment><USER14> There are a lot of cool (though maybe smallish) apps that could be built with this.

Good job on lowering the barrier to entry even further!

I wonder if there are plans for an OpenSocial app builder?

</comment><comment><USER15> Great job, this seriously looks awesome. I can't wait to see what it develops into and the apps that will be coming out through its use.

</comment><comment><USER16> You are telling me that I have to learn to code in Javascript? Are you serious? I've been avoiding Javascript for years. Abstractions such as libraries make this possible. This seems like a step backward.

What I saw "Make Simple Web Apps A Breeze," I expected Infogami done correctly. Drag and drop some buttons to make a website, publish it to an account, and voila, I have a website.

Don't get me wrong, the premise is very cool. It gets my computer science geekery excited. But this is a business here, and it seems like a tool built for geeks by geeks. I don't know what the business model, but based on every other venture YC has backed, it depends on the typical Web 2.0 paradigm: get users --> get funding --> ultimately get ad-based revenue or other branch out to other forms. If your only target is geeks, then good luck. Otherwise, I suggest a little more ease-of-use.

From the few examples I quickly browsed, nothing is out of the ordinary; a chat program, a wiki, a "notes" page, etc... All common Web paradigms that can be abstracted.

Again, very cool, and I look forward to playing around with it once my semester ends. But at the moment, I don't think anybody but the hardcore techies will enjoy it.

</comment><comment><USER17> Interesting stuff there, I may have a poke around later.

Like the simple storage API too.

It seems against philosophy of this thing, but I'd like to see something similar that allowed for more separation of code and html/js/css etc. (I think I'm drifting into regular hosting territory though).

<comment><USER17> edit:

I knocked up <http://wiki.appjet.com/>

That was strangely fun to put together...

</comment></comment><comment><USER18> what about if you guys get together with the weebly guys and make an easy to use code-if-you-want drag-and-drop-if-you-don't web application maker (or back to viaweb but meta)?

</comment><comment><USER5> Will there be a programming competition? That could be fun ;-)

</comment><comment><USER19> This is the best proof of YC investing in people, not ideas.

People behind AppJet must be _very, very_ good.

<comment><USER20> [People behind AppJet must be very, very good.]

Indeed. MIT grads, Ex-Googlers. (<http://appjet.com/about>)

Besides, I personally see more "honey for the bee'" in AppJet, than CogHead for that matter (which I covered briefly in a blog post earlier this year - [http://www.nilkanth.com/archives/2007/04/21/diy-online- web-a...](http://www.nilkanth.com/archives/2007/04/21/diy-online-web-app- builders/)).

<comment><USER21> How do think appjet is better than CogHead, I'm curious?

</comment></comment></comment><comment><USER22> It _was_ cool, when you had the gear logo. ;-)

</comment><comment><USER23> So... YC funded this, but not that cool firefox pricing plugin?

<comment><USER24> This may not be the greatest website since sliced bread, but that "cool firefox pricing plugin" doesn't exactly have a lot of room for growth, whereas clearly there is plenty of room here.

<comment><USER23> Agreed. Although I wonder what the future plans are for this thing. It has some potential for virtual serving of web apps, but right now it seems more gimmicky than anything to me.

<comment><USER25> [http://www.geekculture.com/joyoftech/joystuff/apple1cake/smi...](http://www.geekculture.com/joyoftech/joystuff/apple1cake/smithsonian.gif)</comment></comment></comment></comment>


Malicious Chrome extension is next to impossible to manually remove - <AUTHOR> https://arstechnica.com/information-technology/2018/01/malicious-chrome-extension-is-next-to-impossible-to-manually-remove/ <comment><USER2> _and renaming the folder where extensions are stored—none of them worked._

Then where is it actually installed? Unless it's doing something really rootkit-y (unlikely given that AFAIK Chrome's extensions are just JS), monitoring file accesses would probably be sufficient to determine where it is and how to remove it. Unfortunately, I think this researcher just didn't really try hard enough...

 _Removing the extension proved so difficult that he ultimately advised users to run the free version of Malwarebytes and let it automatically remove the add-on._

...of course, what better than to sneak in an advert for their product!

 _As Malwarebytes explained in late 2016, the forced install trick uses JavaScript to provide a dialog box that says visitors must install the extension before they can leave the page. Clicking cancel or closing the tab produces an unending series of variations on that message._

IMHO this is a sign that JS running on a page has been given too much power (and the reason I only let JS run on a whitelist.)

The other thing I find slightly off is that there's been plenty of mention of how Chrome's extension API is nowhere near as powerful as what the old Firefox extensions could do, and it's a more walled garden, yet things like this are still reported.

<comment><USER3> Have you ever tried preventing an extension from being updated (you can't) or rolling back an update?

Go ahead and try.

I agree that 98% of the time it is fine, but that is not the point. I want to have control over the software that runs on my computer, especially if sometimes useful functionality is stripped away, or malicious code can be run.

Off the top of my head, I had Google Drive install a chrome extension which then informed me that it needed me to grant it more permissions than it had when it was installed without asking by Google Drive, and then when I didn't grant them, it removed itself after a few days, without a trace.

Or there was the time that the Chromecast extension disappeared. Of course, this was because Google integrated that functionality directly into the browser, but, it made me feel very uncomfortable that the software on my computer was so unpredictable.

And there are many other times that extensions have just "upgraded" themselves into breaking.

Out of frustration after feeling no sense of agency, I started using git to track the changes to my chrome config folder. Even if I used git to roll back the filesystem to its previous state, I then have to modify the extensions to not have the right url to check for updates, and then there are still other mechanisms to thwart that. At best, I was able to manually re-enable the extensions I want, and I had to write a script to automate it after each time I started chrome.

Outside of the Chrome extensions themselves, when you install several Google products, like Drive or Google Earth, it adds it's spyware-like "keystone agent" updating daemon to three different locations. WHY? If you remove any of it's hooks, it just re-creates them. And it will monitor your filesystem and irreversibly apply updates to Chrome, which may remove features (like the ability to side-load extensions, or save HTML5 video, or mandatory WideVine DRM).

None of this is made clear to you. It will ask you for root access just so it can install its system-wide updater in two locations, but if you deny it, it will still install it for the current user. If you start to remove it, it will never alert you that it is being tampered with or explain what is going on, it will just resist like spyware, re-creating itself.

Out of frustration, I just started making files immutable so that it couldn't re-inject itself. Obviously that is not ideal, but I had work to do and I was sick of it worming around my computer.

It doesn't have to be this way. I understand the importance of updates. But Google doesn't have to do it in such an underhanded and frankly hostile manor. But this reflects a culture of gaslighting of the user, and general hostility.

So, it makes sense that malicious actors could piggyback on Google's already user-hostile platform. Google is already doing much of the work for them.

EDIT: And before anyone responds by saying that there are technical means to take control of the Chrome browser that I missed, I am sure there are, but that is not the point. I am aware that there is an environment variable you can set that will request that Keystone Agent stop updating, but it is completely undiscoverable, and does not actually stop Keystone Agent from running. Someone should not have to have an extensive understanding of software development just to be able to say "NO", and accept the responsibility for it.

<comment><USER4> As I said before, monopoly companies grow more arrogant over time and Google was particularly arrogant, patronizing, and dismissive of user concerns from the start. What began as a technical innovation, the auto update, quickly became a means of user control and has since spread industry-wide. You can tell when it became user control when you could no longer turn it off.

<comment><USER5> Google exists to be the world's perfect example of the dangers of conflating knowledge with wisdom.

</comment></comment></comment></comment><comment><USER6> Is it not possible to right click the extension in chrome://apps or the button in the toolbar and select "Remove from Chrome..."?

I previously had Stayfocusd and I blocked myself from uninstalling the extension (as a test) by blocking chrome://extensions, but then found a loophole using the method above.

Edit: Confirmed. What this article talks about is a total non-issue. All extensions can be removed by right-clicking their toolbar button (btw they HAVE to have a button) and selecting "Remove from Chrome."

<comment><USER7> What if it doesn't have a toolbar button?

<comment><USER6> Google policy says that all extensions must have a button: "Starting in this latest release, you'll begin to see all extensions to the right of the URL bar, so you can easily remove anything you don't recognize. Just right click the extension icon and select "Remove from Chrome.""[0]

[0]: [https://blog.google/products/chrome/new-year-new- chrome/](https://blog.google/products/chrome/new-year-new-chrome/)

<comment><USER7> Ah I see, they got around that by colouring the icon the same as the background so it was "invisible"[0]. Obviously the extra space is suspicious if you're looking for it but I can see how that couldd be overlooked by most users.

[0] [https://blog.malwarebytes.com/wp- content/uploads/2018/01/Chr...](https://blog.malwarebytes.com/wp- content/uploads/2018/01/ChromeRedirect.png)

</comment></comment></comment></comment><comment><USER8> I am not sure if a 'pro' version of Windows is required, but I've found adding a 'Deny: Everyone' to NTFS permissions on required files comes in handy in situations like this.

</comment><comment><USER9> Not to defend Google, but I am sure there are alot of false malicious reports for many apps.

From competitors, trolls, and just random idiots...

I wonder if they flag it for review after X reports in Y time frame.

I wouldn't expect immediate action, but 19 days is a bit much.

it does look pretty bad towards the end, that you can specify any site as the extensions website to make it look more official.

What I don't understand is if they started chrome in another mode passing the executable arguments that should have disabled said extensions, how was it still redirecting the extensions management page?

</comment><comment><USER10> Sounds more like a sneaky paid ad for Malwarebytes to me...

</comment><comment><USER11> Breathless reporting about impossibilities should be reconsidered.

It's not impossible to uninstall chrome and re-install it under a different path, and create an alternate OS user account on the same laptop or desktop, and log into that to effectively reset Chrome to its default state in a non- disruptive manner.

The unfortunate fact, however is that most people simply won't do that because it's too inconvenient, or users of a particular machine have been subjugated by system administrator overlords, as part of an organizational policy, and lack admin privileges to migrate to a fresh user account in part or in whole.

People also often tend to use the admin account unhygienically. Which is not actually much of a sin, as long as you enter into those activities with the mindset of anticipating a full reinstall at the operating system level.

...which of course won't even kill the firmware implants that advanced persistent threats have dropped into your peripherals, via intel extensions commissioned by the NSA.</comment>


Authoring eBooks - <AUTHOR> http://www.authoringebooks.com/ <comment><USER2> aside from this looking like a scam, the preview for this title actually focuses on the most useless part of authoring ebooks: building social media hype.

if you want to learn to code an ebook, go to <http://blog.threepress.org/> which is a pretty satisfying mix of technical and 'get it done.'

</comment><comment><USER3> This is spam (yes I flagged it) bascially it's the 21st century version of making money at home by stuffing envelopes with a flyer telling people how to make money at home stuffing envelopes.</comment>


Simple method for computing distance between point and an ellipse - <AUTHOR> http://wet-robots.ghost.io/simple-method-for-distance-to-ellipse/ <comment><USER2> Very interesting! I explored this method and compared it to Newton's method, you may like it: [https://github.com/sharnett/point_to_ellipse/blob/master/poi...](https://github.com/sharnett/point_to_ellipse/blob/master/point_to_ellipse.ipynb)

<comment><USER3> I found a paper using a similar idea (but using a different method to step the parameter) to find the orthogonal projection onto curves. It also converges quadraticaly, and seems a little faster through my experiments. [http://www.geometrie.tugraz.at/wallner/sproj.pdf](http://www.geometrie.tugraz.at/wallner/sproj.pdf)

</comment></comment><comment><AUTHOR> OP here

This blog post was subject of yesterday's Ask HN ([https://news.ycombinator.com/item?id=15110162](https://news.ycombinator.com/item?id=15110162))

I haven't written something like this up in a long time, so feedback appreciated.

Thank you

<comment><USER4> Congrats on the find, although I'm not familiar with any of the material presented it's a clear and nicely written Blog Post.</comment></comment>


Ask HN: Cloned side project - <AUTHOR>

I've been working on something, as a side project. But I ran into somebody else who recently released a similar product.<p>Should I continue to work on mine? Or ditch it because it is redundant anyways? <comment><USER2> I have a similar problem. I'm working on a static site generator. It improves on some ideas other people had, but it isn't exactly unique. With several hundred similar projects out there thats almost impossible anyway. It serves my needs, but it isn't exactly mature.

I'm always seeking for a new one that solved the annoyances other projects had so I can just use that one instead. But there is always something off. I could improve the code or give the author a suggestion. Problem is, I'm in dire need of a portfolio. A whole project is far more impressive than one or two patches or a mere suggestion in someones issue tracker.

In the end I would be releasing code I don't really intend to use as soon as something else has all I need. One that probably no one would be using. Perfectionism and pride suddenly come into play.

<comment><USER3> If you're aware that it will be unlikely to take the world by storm, then complete it regardless.

You'll probably learn interesting things, and have something you can use either for real, or as you say for a portfolio-project.

FWIW I wrote [http://github.com/skx/templer](http://github.com/skx/templer) for similar reasons, in my case annoyance at how poorly other static site- generators handle symlinks.

I use it these days on several sites such as [http://lumail.org/](http://lumail.org/) & [http://tweaked.io/](http://tweaked.io/) both of which other people have contributed to, which makes me think the barrier to entry wasn't too high.

</comment></comment><comment><USER4> The thing is, competition can signal that there is a real market for what you're doing.

It's generally not a good thing to be the only game in town over the long run.

</comment><comment><USER5> If you would use the competitor and be completely happy with it then drop it. If you are confident in your ability to provide a better value add then the competitor then charge ahead. Your only loss is a little time.

<comment><AUTHOR> Thank you for the answer!

The issue here is that my product is definitely better designed, and can match (perhaps even slightly bypass) the technical capabilities of the rival product!

But It'd be safe to say the following — The "rival" has established a (4-5k people) community around the product, and my better designed version aims to build a larger community of users. I'm not going to be charging, and neither is he.

<comment><USER6> Similar to the above poster, I think you have to determine what your goals are for your own side project. Is it mostly a learning exercise for yourself? Was it your lottery ticket? Were you just simply trying to build a product that solved your own problem that you didn't think existed at the time?

If you both aren't going to be charging for it, is the other one open source? Is there some kind of arrangement you two can make to work together?

<comment><AUTHOR> The project was mostly to give back to the community (not to learn or anything, while it has taught me a lot)

Both mine as well as the other one is open source, but I don't know how to go about a merger.

</comment></comment></comment></comment><comment><USER7> Continue to work on it if your approach differs. There are not unique ideas but it depends on who executes it better.

</comment><comment><USER8> Just keep working on your product/project. Competition may add features to your project !!!</comment>


American Hypocrisy, R.I.P.? - <AUTHOR> http://drezner.foreignpolicy.com/posts/2013/10/24/american_hypocrisy_rip

<comment><USER2> F __* sites that do this. A 90% screen-size popup lightbox iframe that says "create an account to read this article" and no close button.

Praise the lord for adblock.

</comment><comment><AUTHOR> The source essay behind Dan Drezner's post now appears to be free. Submitted independently.

The End of Hypocrisy | American Foreign Policy in the Age of Leaks - [https://news.ycombinator.com/item?id=6605148](https://news.ycombinator.com/item?id=6605148)

</comment><comment><USER3> This article is not accessible without an account.

<comment><USER4> It is if you turn of stylesheets. I have a button for just such an emergency.

<comment><USER5> Or for a more precise (but more manual) approach: right-click "inspect element", delete it (or it's parent, or parent's parent, and so forth.

In Chrome anyway. The same thing can be done in Firefox, newer-IE and others, just with a slightly different sequence.</comment></comment></comment>


Ask HN: Will Python grow some Rails? - <AUTHOR>

Just an unconstrained opinion from someone who has used neither.
Python needs a rails, one that appears polished (nice website design, nice graphics) and has enough resources for learning it (learn jetpython the hard way) - because as an outsider looking to go into programming web apps, rails seems much nicer with the appealing sites being made in its ecosystem. It should be like rails in the sense that for newbs, all the default config is done and  will have the best options for new users, like rails does.
Right now, based on my perceptions as a non-user (which is an important crowd), python appears nicer to use but given there is no killer web framework agreed upon to the extent of rails, I am more likely to start learning ruby instead.
Will it happen for python? Posts like this seem a step in the right direction: http://www.scribd.com/doc/37113340/Why-Django-Sucks-and-How-we-Can-Fix-it <comment><USER3> Keep in mind that that "Why Django Sucks" talk was given by a guy who very much loves Django.

I doubt that the Python community will ever spawn a web framework as _slick_ as Rails. I think that the people who choose Python tend to have a very pragmatic, engineering bent and I don't think they value the slickness as much as the Rails community does. Keep in mind that Python is one of the few languages that Google writes code in.

Probably if Rails closed up shop today, more of the people that value that would move to python. Rails tends to draw what I would call the "web 2.0 crowd" who make very slick, very stylish websites. You can do that in Django too but you have to be willing to hire a designer. Ruby/Rails tend to see that as a core competitive advantage. Python has a much longer history and therefore tends to be more conservative. You can see that reflected in Django's release/deprecation schedule. Neither of those approaches are bad things. Diff'rent strokes for diff'rent folks.

I think both of those languages/frameworks are better for each other although Python frameworks are better at borrowing ideas from Rails than the other way around. That's probably true of many frameworks though. They're not all that different, and I think you should probably learn and/or try out both.

I think both Django and Rails need to look out for the winner of the web battle in what I see as the up-and-coming language/framework: Javascript/Node.js

This is all, of course, just my opinion.

<comment><USER4> Could you elaborate on the node.js part? I thought it would be mainly used for certain aspects of a web app while the rest would be written in python or something similar. I'm not an experienced programmer so i really have no idea how this will turn out.

<comment><USER3> Node.js is a lower level event framework written in Javascript and run inside of Google's V8 engine. You're probably familiar with a similar event driven javascript framework: jQuery. Node.js is like that but instead of clicks and mouseover you have streams and processes. You just attach code to these server events.

From the node.js docs:

 _Many objects in Node emit events: a TCP server emits an event each time there is a stream, a child process emits an event when it exits. All objects which emit events are instances of events.EventEmitter._

You will probably have to write a JSON API for your web app anyway. The advantage of Javascript is that you can push logic down to the client as well. You send the data down, and have the Javascript code running on the client insert it into the DOM directly. There are already pretty complete JS web frameworks (google it) and you can start to see that the "web app" which produces html isn't really necessary in that model.

It's all still a bit bleading edge. I don't recommend it for beginners quite yet, but keep it in mind. Your choice of which framework to learn isn't like "which house do I buy because I have to live in it forever." You can - <USER2> probably will - move soon. You're really investing in your ability to figure out web frameworks.

</comment></comment></comment><comment><USER5> How about Django? I thought it is the python's rails.

</comment><comment><USER6> Django is the Rails of Python.</comment>


Ask YC: Need a bit of advice, fellow student is screwing me over on this website. - <AUTHOR>

I confess to being a total moron for not getting anything in writing.
Anyway: I was offered $500 to write a database-backed web app and missed one deadline they gave me. There were a couple occasions where I said I hoped to have it done soon, but didn't. Anyway, they never specificed exactly what they wanted, so I pushed out a functional version that had the general aesthetic they wanted, figuring that I could add in other changes once they played around with it a bit. I also had to pay about $300 in hosting, since their hosting wasn't set up to serve anything more than static HTML.
Because they think I missed "several" deadlines and the site wasn't what they were imagining, they now want to pay me only $500, instead of $500 plus hosting. Effectively, only $200 for my work. My question: should I bargain or just take their new offer, or take down the site? I'm considering bargaining, because the guy's part of an organization, and I'd like the rest of the members to hear my side. What I was thinking was to cc the other person I know in their organization with a defense and a request for the full amount. Thoughts?
Edit: I can cancel the hosting within the next couple weeks and get that money back, so keeping the code and walking away doesn't hurt me financially. <comment><USER2> What you don't have in writing, they also do not have in writing.

You owe them nothing except what you believe to be right. Likewise, they owe you nothing except what their conscience tells them is right.

It sounds like requirements and fees weren't discussed very much or very clearly, and that's asking for everyone to be disappointed. But, if you're in the hole due to their own inability to setup a webserver...they owe you for the webserver, too, if they want the site. It was nice of you to provide that additional service all this time.

Anyway, if it were me, I'd probably walk away, code in hand, and simply avoid working with this person in the future. But I don't need $500 to make rent or buy books or whatever and to pay off a $300 hosting bill...you do what you have to do and what you're dignity allows/demands.

All of that said, I've worked _many_ times on a hand shake deal. In fact, I've almost never done contract work with an actual contract. When things go wrong, it's almost always wrong on both sides (or you possibly aren't a very good judge of character), and I usually accept my lumps and move on, avoiding working with the person again. The definition of "accept my lumps" depends on a lot of factors...and in this case could mean, "take the $500 and get away fast", "shut down the site, hold onto the code and discontinue working with/for this person", or "demand $800 even though confrontation makes you uncomfortable". Only you can decide that.

I think the key here is that you're more intimidated than you need to be.

<comment><AUTHOR> Thanks for the eloquent post. I'm going to cool off a bit longer, ask for the original amount, and then walk away if they decline.

</comment></comment><comment><USER3> Give them the app for the $500 they promised you. On a DVD/CD. Hosting it is another cost, which you would be glad to do/arrange for them, once you get that cost paid to you.

</comment><comment><USER4> Was the hosting expense approved by them? Rather than "bargaining" I think you'd get a lot more out of listening and really trying to understand what their expectations were. That way you'll know more with your next client.

One thing about consulting is that it really pays to over communicate, ask for lots of approvals, and capture as much of it in email as possible. Be direct:

"Even though we've talked numerous times, the requirements still seem too general for me to correctly implement the product. What I'd like to do is produce something that's in the general aesthetic so that we have something concrete to talk about. I will upload this version by 8/18. Do you approve?"

<comment><AUTHOR> Yes, the hosting expense was approved. After the client (fellow college student) saw the site, they submitted a checklist of things they wanted to change. Aside from adding search functionality, it was very minor stuff like adding a link back to the main page. The guy I've had to talk to is so dissatisfied with me at this point, though, that he's calling in a different programmer.

The other thing making this tough is that he's over in Ohio with a little group trying to capture absentee votes for Obama. That's one reason why it seemed easier to make something that worked and looked fine to normal users, even if the admins had to deal with a clunkier interface. So this is complicated because they 1) didn't specify exactly when they wanted this, and they've just let me know recently they wanted this a LONG time ago, and 2) they don't want any more code from me, which is really frustrating, because they only want minor changes and the main groundwork has been completed.

</comment></comment><comment><USER5> Tell them your fee is $800 ($500 for the work and $300 for hosting). If they don't pay you don't deliver the product.

Edit 1: Or tell them your fee is $500, not including $300 hosting.

<comment><AUTHOR> Hm, so adding you into the total, half are for just eating the cost, and half are for going after the original fee. Aah!

Thanks a lot for responding though.

<comment><USER6> I think both markm and tonystubblebine have made good points. Require all of the money originally agreed upon, and do your best to over-communicate and get things done the way they want them.

Be willing to admit you may have made a mistake. Even if you believe that they are ultimately responsible for the breakdown of your arrangement, start off your communication by apologizing for poor communication, or something along those lines. They will appreciate your honesty and humility, and be more willing to listen when it's time to talk about money. Do your best to be calm, patient, and kind, while being firm, and you'll likely at least gain some respect.

<comment><USER7> There are some good points here. I would definitely in the future separate your costs from your work. Hosting is their cost. It should have been paid by them upfront, not from you. Its one thing you should require in the future. Not only will it weed out people who can't really pay, but it helps separate in people's minds what work you're doing.

To your customers, that hosting cost is now included in their minds of what their site is "worth." It shouldn't be. Your work is separate, and the hosting costs have nothing to do with how much your work is worth. Mixing them up was a mistake on your part. You now have to prove what you did was worth $800, instead of proving that its worth $500, with $300 hosting costs (which would have been paid before this).

I'd say stick to your guns, but also come up with a "carrot" instead of the sticks everyone else is talking about. Yeah, you might not think you need to, but adding in a few extra features to make sure you get your $500 might be worth it if you can pull them off quickly.

And by carrot, I don't mean saying you'll do what you were going to do in the first place. To work psychologically, it has to be beyond what they were expecting.

</comment></comment></comment></comment><comment><USER8> In my opinion, $500 is too low for even the simplest site.

6 years back i had a similar disaster. I promised a friend to do a site for $300. figuring there was only 3 hours of work and i was gonna make $100/h. yay... it was an instant disaster. took like 80 hours of work. negotiated more money but was not happy in the end.

The very fact that your customer is willing to spend only $500 on a site is a huge tell.

As for hosting in development: Avoid deploying the development version to remote servers (its a risk that will end up costing time and money). you can use your local computer and just signup to a free virtual dns name like no- ip.org.

Tips to charge more:

Design and setup + deployment to production also need to be billed. Dont give an estimate without a design. If the design takes more than a few hours, you should bill the design (since the customer can use it without you).

Also start taking at least 25% up front. It will ensure your customer is READY and SERIOUS about working with you. Too many times the customer will delay waiting on product information or information from a partner. Having money in the pot will motivate all parties to move quickly.

Institute a minimum amount you can bill. For instance, I dont accept billable work worth less than 8 hours of my time. It ensures that people are not wasting your time.. cant tell u how many times i've heard "Can you change the background color?" and then it ends up turning into something a little more complicated. So, just ask for a minimum. Either the customer is really in an bind he will have to pay it, or its not so important and he can queue up the work until he has enough work to make it viable for you.

cheers

<comment><AUTHOR> Thanks a lot. I'll definitely keep this in mind if I do any freelancing of any kind in the future.

</comment></comment><comment><USER9> Zuck, is that you? Just let those winkelvoss twins go and do it on your own.

</comment><comment><USER10> Err, host it somewhere that's not ludicrously overpriced and move on.

A 500 dollar app on a 300 dollar server? Sheesh.

<comment><AUTHOR> It's a Rails app at hostingrails.com. Great customer service and nice options, but they forced me to pay a year in advance. Hence the ludicrous cost. Also, a friend who's made some nice apps with Rails recommended them to me.

Anyway, I can also cancel within 30 days of signing up and recover the cost, so walking away doesn't hurt me financially.

<comment><USER11> So cancel and get a $20 slicehost slice. Or linode.

</comment></comment></comment><comment><USER12> You have the code. You have the power:

"While I fell behind schedule on a few of the deadlines, I feel that, in the end, everyone agrees that a great product was produced relatively on schedule. In addition to the work I initially agreed upon, I incorporated X's suggestions and extended the site further, even though, based on our initial discussions, it was determined to be feature complete. As such, I cannot accept any payment beneath the initially agreed upon amount.

If your team is unwilling to pay this amount, I will be forced to take down the site and cancel the service to recoup my losses."

<comment><USER13> They have the money and the code doesn't appear to have another use. I would be careful about thinking "I have the power." In misunderstandings like this, there are typically mistakes and misunderstandings enough on both sides.

</comment></comment><comment><USER14> If they don't pay you, tell them that they are not allowed to use your software. If they do howeer use your software, they are using pirated software which will be very very expensive for them (If you call in the police and they confiscate all the computers and data). (Maybe add some function to the code which occasionaly requests a site on your webserver so you can check if they are actually using or not).

</comment><comment><USER15> One idea that I haven't seen on here going forward is to request a deposit of 50% for upfront after deliverables have been agreed and 50% payable on delivery. Works great for sub-$2000 projects IMO.

</comment><comment><USER16> My question is this: Did you confer with them before you signed up for the hosting?

If you didn't then I'm not sure why you're demanding money for it. You're owed the $500 for the coding since you did it to spec, even if it's not as fanciful as they had imagined it.

But really... $300 for hosting? Are you serious? If I had someone come to me and try to that pull over me I would be furious. You could have easily showed them the site on a laptop without hosting and then talk to them after wards about extending your contract to consult for them how to implement the site.

<comment><AUTHOR> Yes, of course I did. They're also not physically present and not technical at all. Just emailing them the code wasn't an option.

Is $300 really such a bad deal for a whole year in advance, by the way? It works out to about $20 a month.

<comment><USER16> Did they okay the expenditure? Did you work out how you were going to transfer the code to them?

300 annually is 25 a month. Linode.com and slicehost.com both have plans starting at $19.99 and doesn't require prepayment. That might be something easier for them to swallow.

<comment><AUTHOR> Yes, no. I suppose I _could_ have emailed the code to them, but as non- technical people, they wouldn't be able to do much with it beyond passing it on to someone else.

Anyway, thanks for the hosting suggestions; I'll definitely check them out.

<comment><USER16> If they knew all of this going in then you're definitely owed the money. Good luck getting paid.</comment></comment></comment></comment></comment>


RISE: A functional pattern-based data-parallel language in MLIR [pdf] - <AUTHOR> https://michel.steuwer.info/files/publications/2020/accML.pdf <comment><USER2> I like the increasing trend of having data parallel languages for GPGPU programming in a more natural way, instead of keeping bending existing languages to fit the hardware.

<comment><USER3> APL/J/K have been there for the last 60 years. I think the challenge is to change people's mindset much more than it is to come up with the proper language.

<comment><USER2> APL/J/K are too complicated for developers in the trenches.

ML style functional programming is more amendable.</comment></comment></comment>


Report to local authority in the UK if you see a kid using Tor, VMs, Linux etc. - <AUTHOR> https://twitter.com/G_IW/status/1227700420178567170 <comment><USER2> Ironically, if a child is seen to be using Windows 10, Android, Instagram, YouTube, Facebook, then their parents and guardians need to ensure that the children understand that such software and online services are a danger to their privacy and mental health, and should warn them of how advertising will manipulate them and cyberbullying harm them. That these entities do not care about them or reducing any potential harm.

Our governments need to be curating or writing guides to help parents and guardians teach children about these dangers and how to avoid them. Open source software and online services that respect the user are entities to cherish and encourage, rather than treat like a boogeyman who's earned the title without any material evidence.

<comment><USER3> Actually they do; in the UK at least, the NCSC (National Cyber Security Centre) provide lots of good information about cyber security, handling your passwords properly, child safety online, as well as various guidelines for other cyber security/safety online concerns.

[https://www.ncsc.gov.uk/section/information- for/individuals-...](https://www.ncsc.gov.uk/section/information- for/individuals-families)

Also, to note, the NCA replied on Twitter to point out that the use of their logo on the poster was unauthorised and not endorsed.

<comment><USER2> Wow, that looks like a rather useful resource. I'm surprised this is the first time I've come across it. Thank you for the informative pointer!

<comment><USER3> No problem. I work in info-sec/comms-sec in the UK and it's an invaluable resource for guidelines on information handling and security practice. We often refer to it when we want to set a policy in the company I work for, for example on password strength in any given year.

I think it can be very useful also for startups that don't specialise in security to make sane security policies based on something "official".

<comment><USER2> I'll be sending my residential and micro business customers to it, as well. And it never hurts someone who thinks they're informed to read these guides.

</comment></comment></comment></comment></comment><comment><USER4> This is close to parody-level solutions here. Although this really doesn't represent the whole of the UK but just the West Midlands region, the age old assumption that kids on Kali Linux + VBox + Discord = Hacking is really beyond comical these days.

Unfortunately, when it comes to some parts of the UK marketing their solutions to preventing cybercrime and blackhats, this is just one of their finest ideas. /s

<comment><USER5> Kali Linux seems to have become popular as an "elite" d00d's distro of choice, for whatever reason. In fact, it is _specifically_ intended as a penetration- testing tool only and not for general-purpose use, because it forgoes some security mitigations that you generally want to keep enabled on your actual systems.

<comment><USER6> One big reason is the Mr Robot TV series. The main character uses Kali Linux for "hacking", and it was quite a popular show amongst casual computer users. As a result, many people who had limited knowledge about security started installing Kali Linux on their laptops so they could be "hackers" too.

<comment><USER7> He always wore hoodies and nobody is talking about the dangers hoodies represent ;-)

<comment><USER8> Spoken as someone who's never been subjected the Daily Mail!

</comment></comment></comment></comment></comment><comment><USER9> > 1\. Has your son asked you to change ISPs?

> 2\. Are you finding programs on your computer that you don't remember > installing?

> 3\. Has your child asked for new hardware?

> 4\. Does your child read hacking manuals?

> 5\. How much time does your child spend using the computer each day?

> 6\. Does your son use Quake?

> 7\. Is your son becoming argumentative and surly in his social behaviour?

> 8\. Is your son obsessed with "Lunix"?

> 9\. Has your son radically changed his appearance?

> 10\. Is your son struggling academically?

The more things change, the more they stay the same, eh?

<comment><USER10> For the uninitiated: "Is Your Son a Computer Hacker?" [1]

[1] [https://web.archive.org/web/20191111044139/http://www.adequa...](https://web.archive.org/web/20191111044139/http://www.adequacy.org/public/stories/2001.12.2.42056.2147.html)

<comment><USER11> Wow. I honestly can't tell; is this satire? The sad thing is that this remains many people's view of computers. The first thing this person is missing is the ingenuity of people who want to get around stuff; some crummy filter or lower- powered hardware won't dissuade anyone who's curious.

<comment><USER12> I felt the same, and still am not sure but if it wasn't, just wow. It felt like just a naive parent not knowing what they're talking about but this one had me really scratching my head...

 _If your son has requested a new "processor" from a company called "AMD", this is genuine cause for alarm. AMD is a third-world based company who make inferior, "knock-off" copies of American processor chips. They use child labor extensively in their third world sweatshops, and they deliberately disable the security features that American processor makers, such as Intel, use to prevent hacking. AMD chips are never sold in stores, and you will most likely be told that you have to order them from internet sites. Do not buy this chip! This is one request that you must refuse your son, if you are to have any hope of raising him well._

<comment><USER13> > and they deliberately disable the security features that American processor > makers, such as Intel, use to prevent hacking

This aged well...

</comment></comment></comment></comment></comment><comment><USER14> The NSA also thought visitors of LinuxJournal were "extremists," so what else is new?[0]

[0][https://arstechnica.com/information- technology/2014/07/the-n...](https://arstechnica.com/information- technology/2014/07/the-nsa-thinks-linux-journal-is-an-extremist-forum/)

<comment><USER15> I'm old enough to remember when Radio Shack was freaking people out by not selling them things if they had some unknown combination of components bought. They were so damn insistent on getting your address. Only store I always paid cash at because I was on an electronics kick and my friend had been told he was not allowed to buy some combination of components. That was friggin hilarious (he was building a controller for a pump), and I bought the components at another store location (Radio Shack was sadly the only game in town at the time).

</comment></comment><comment><USER16> Oh no, should all kids that have Raspberry Pi be reported? When you see kid using Linux on Raspberry Pi?

[https://www.raspberrypi.org/blog/made-in-the- uk/](https://www.raspberrypi.org/blog/made-in-the-uk/)

<comment><USER17> Kali Linux is a particular flavour which includes pen testing tools, which is why it makes the list, they're not referring to all distributions.

Don't make me defend this rubbish! =)

<comment><USER18> I think all or at least most Linux distributions include pen testing tools in their official repositories, Kali Linux just ships them out of the box. It seems that most kids using Kali Linux do it because it's "elite" or whatever, they don't know how to actually use it. I'm much more worried about a kid running Debian than one running Kali Linux, if only because Debian isn't "cool" so they must actually know what they're doing.

That being said, I don't expect law enforcement to be that sophisticated.

</comment></comment></comment><comment><USER19> Let's just hope that parents that are computer savvy enough to actually find and identify kali linux on a kid's computer are smart enough to talk to their kid instead of snitching on their own to the police.

</comment><comment><USER20> In postwar East Germany, about 1% of the population were reportedly informants for Stasi.[0]

I wonder what percentage of parents get caught up in this. I bet that it's more than 1%.

0) [https://www.dw.com/en/east-german-stasi- had-189000-informers...](https://www.dw.com/en/east-german-stasi- had-189000-informers-study-says/a-3184486-1)

<comment><USER21> Snitch culture is a very dangerous and contemptible thing. It's what kept Cuba, NK, and the former soviet empire running. You just need to demoralize a small minority to watch over their neighbours, reward them with something petty, make a few big examples of individuals, and you can create a climate of fear to rule with.

Where I grew up, teachers used to punish tellers along side the alleged offender because it was bad for society.

<comment><USER9> > Where I grew up, teachers used to punish tellers along side the alleged > offender because it was bad for society.

Absolute legend.

Where was this?

<comment><USER22> Not OP but wouldn't be surprised if it was around the Med... in Italy there is a kids' saying that goes "a spy is not a child of Mary" ("chi fa la spia non è figlio di Maria"), i.e. grasses are going to hell.

<comment><USER23> The south of Italy is entirely corrupted by organized crime, so I'm not sure it's a very good example.

<comment><USER21> Hadn't thought of it, but given Catholic schools and area, so probably similar. Early christians met in the catacombs of Rome, so the tradition of keeping it between you and your priest (sub rosa) might relate to the culture. Their whole mythology is about the consequences of betrayal to political authorities.

I wonder if there is a link between these snitch cultures and secularism/atheism. Rather puts a spin on "keeping it G," as well.

</comment></comment></comment></comment></comment></comment><comment><USER24> I am generally worried with were most of the anglosphere seems to be headed these days. The UK always had an irrational fixation towards surrveilance technology, but with a gaze at the political developements of the past years this existing infrastructure gets a whole new meaning I am afraid

<comment><USER25> Yes. We're laughing at the idiocy, but the idiocy is becoming more and more entrenched. And more and more idiotic.

And we're also missing the subtext - which isn't specifically about using Kali etc, but about the implication that anyone clever, curious, and different should be considered dangerous.

</comment></comment><comment><USER26> That's how it starts. One day you're rolling your own kernel, the next you're knee deep in Docker writing goroutines to keep one step ahead of the police.

<comment><USER27> [https://xkcd.com/456/](https://xkcd.com/456/)

</comment></comment><comment><USER11> Kali's response is pretty funny:

> Have to admit it's sort of nice they give kids a roadmap on where to get > started. We all know the easiest way to get a kid to do something is to tell > them they can't or should not, then they list specific item not to do. To > bad they did not link to [https://kali.training](https://kali.training)

Seriously though, I bet they'll get a bunch of people downloading this stuff just because it's "forbidden".

</comment><comment><USER28> Reminds me of this article about a student whose property was seized because he had computer expertise:

[https://www.eff.org/deeplinks/2009/04/boston-college- prompt-...](https://www.eff.org/deeplinks/2009/04/boston-college-prompt- commands-are-suspicious)

</comment><comment><USER29> "Have you ever, while running Linux, questioned the teachings of the Mormon Church?"

"Micheal, where did you get this?"

"It's from a website."

</comment><comment><USER30> 1\. Find which politician uses Android

2\. Report them for using Linux

3\. ???

4\. Profit

</comment><comment><USER31> "Hey guys, isn't it funny how so many people have no idea what's dangerous or not because we, as an industry, do an absolutely shit job of helping people understand computing in any meaningful way?"

<comment><USER32> Science had this problem until scientific communicators became really popular, which really started with Sagan. Since then I'm not sure we've had anyone near that level, though deGrasse Tyson ("Black Science Man") does a pretty good job (Sagan set a high bar). I'm not sure a character or even community like this exists for tech.

</comment></comment><comment><USER33> Something you may not know about Kali:

It is used by the DoD, Canada's DND, and the UK's MoD, and by extension I assume all of the 5eyes.

It is the standard tool. This isn't "just because" they saw it on Mr.Robot.

<comment><USER34> So you're saying my kid is using military technology!

</comment></comment><comment><USER35> Reminiscent of this: [http://linuxlock.blogspot.com/2008/12/linux-stop- holding-our...](http://linuxlock.blogspot.com/2008/12/linux-stop-holding-our- kids-back.html)

"I along with many others tried Linux during college"... but I never inhaled.

</comment><comment><USER36> Way to bury the lede -- DISCORD is considered 1337 Haxor Software by these clowns? Really?

<comment><USER11> It's not, though there are a surprising number of servers that sell stuff like hacked accounts, shady coupon codes, etc. Very little actual hacking; I don't think I know anyone who uses it for anything serious. Also creepy as all get out to tell people to call the police on their own children.

</comment></comment><comment><USER37> What's really sad is the near certainty that there is some parent out there who reported their child to the police for playing Quake and now that kid has an official report floating around official networks flagging him for this. In these days of data crunching, social credit scores, and all forms of algorithmically driven assessments there's a significant chance that this could damage that kid in ways he might never even find out about.

</comment><comment><USER38> For some it seems Tom Scott's "Oversight" [0] can't come soon enough.

[0]([https://www.youtube.com/watch?v=RIuf1V1FhpY](https://www.youtube.com/watch?v=RIuf1V1FhpY))

Well worth taking ~2 minutes out of your day for if you havent't seen it.

</comment><comment><USER39> This is one way to dumb down the population and fill them with fear. Given the current events in the UK, neither of these goals are surprising. Anti- intellectualism seems to be rising in many parts of the world and is clearly correlated with the rise of right wing authoritarianism. It makes sense as authoritarians want to keep people stupid and ignorant of what is going on by controlling them through fear. This is what happens when the culture adopts authoritarian views. The US isn't much better in this regard. One can really see the similarities between the societies when looking at their worst aspects, authoritarianism, anti-intellectualism, and fear mongering.

</comment><comment><USER20> Back when I was a child, it would have been about headphones with alligator clips ;)

</comment><comment><USER40> I think it's tangential to the recent discussions of decreasing computer literacy of modern children and teenagers.

Kids should break stuff apart, mess with the parts, try to reassemble them, bypass obstacles, change everything, ruin it all and make it whole again in their own ways. This is not just the natural way of learning, this is also the base of engineering and all scientific thought. If have children (or know someone who does) and don't encourage this behaviour, please reconsider.

Humans should be explorers, not the "consumers" of the universe.

</comment><comment><USER41> I don't know. I feel like the person that wrote this knew exactly what they were doing, and also knew the joke would be completely lost on whoever asked them to do this.

</comment><comment><USER42> I find this really funny as I had my parents buy me "Hacking: The Art of Exploitation" in bookstore when I was 13.

</comment><comment><USER43> If your kid is using any of these he probably has a promising career ahead of him (or her).

</comment><comment><USER44> The response by Kali Linux nails it: [https://mobile.twitter.com/kalilinux/status/1227703199584395...](https://mobile.twitter.com/kalilinux/status/1227703199584395267)

</comment><comment><USER45> Cool kids use Black Arch Linux.

</comment><comment><USER46> It's pretty dangerous to use Virtualbox. Oracle might run after you for money.

</comment><comment><USER47> No such thing as bad press :)

</comment><comment><USER48> Nice advertising. Now those kids will know exactly what to download in order to access the deep web and try out exploits. Do they not know about the Streisand effect?

</comment><comment><USER49> Also the title sounds funny, "What is on a child's computer?"

As well as the very 1984 like, "engage them into positive diversions." Great copy!

</comment><comment><USER50> Report your kid if he/she has a brain and is not getting brainwashed on Facebook or YouTube.

This kind of thinking is really a bigger problem imho

</comment><comment><USER51> That's great, the more kids will play with Kali and other tools the better. Rough times ahead, youngsters shall be empowered.

</comment><comment><USER52> Oh, be mindful of VMS for sure. Eh, VMs, is it?

</comment><comment><USER53> Thanks, I didn't know what Metasploit was before. An easy to use hacking tool sounds very interesting to me...

</comment><comment><USER54> Am I the only one surprised for seeing them mention Discord instead of IRC?

<comment><USER55> It's only adults left on IRC these days, all the script kiddie chats happen on Discord.

</comment></comment><comment><USER56> Your son could just be training to be a penetration tester.

</comment><comment><USER57> first, the email in the photo goes nowhere. its west- midlands.pnn.police.co.uk, not "uk" unless DNS in the UK does something we're not supposed to know about

Second, theres no mx or mailserver there...the SOA is AWS though...

THIRD:

If I see a kid with a $200 wireless hacking toolkit running TOR on a Kali KVM hypervisor full of metasploit nodes and actively discussing the whole thing on discord, and its _my_ kid, im calling the local university.

<comment><USER58> Nope, police.uk is a real valid domain name that the UK police have been using for years. That isn't a sign this is a fake, although it may well be.

Registrations at the second level of ccTLDs is not uncommon, and Nominet has relatively recently opened .uk registrations to anyone, after a period of trademark and .co.uk-holders only.

</comment></comment><comment><USER59> You wouldn't download a car?

</comment><comment><USER60> sounds like infosec control freaks trampling civil right to self-development as if their voluntary submission to work related "need to know" practices extend to the public at large who did not sign the contracts they did...

whereas in the past people fought to get their skills recognized, soon people will fight for skill privacy

</comment><comment><USER61> But, uh, Russians and fake news, right?

</comment><comment><USER62> One of the reasons why I supported brexit as non UK european. Also their attitude to knives.

</comment><comment><USER63> Don't really see the problem with this - the optimist in me believes that this can be helpful for parents who might be in over their heads. The leaflet isn't necessarily asking for vigilance to put kids on watch lists, just to give parents and kids some information on what is/not wrong to do.

"let us know so we can give advice and engage them into positive diversions"

Sounds like police actually trying to have a positive impact here.

<comment><USER15> Reporting your kid to the police for non-crimes will not have a positive outcome. Your kid will be on a list, never trust you again, and have to overcome so many more obstacles. Every generation of parents finds something that is "over their heads" and they need to deal with it like responsible adults. Know what your kid is interested in and not fear monger it. Deal with issues like an adult with educating yourself.

<comment><USER64> Seconded. Police are not There To Help You. Police enforce the law. When in doubt of the law, they simply enforce. Don't ever tip someone off to the police unless you have a real reason to believe they have or will harm a person.

<comment><USER63> I know this is the internet echo chamber, but the police in my community, and everywhere I have lived, provide a lot of outreach opportunities to under- educated and under-privileged (east coast, USA, for reference).

<comment><USER15> I'm friends with police in a hard to police area, and they are good people. It really has nothing to do with the normal functioning of their community outreach or the individuals themselves. I find my friends are intelligent and care about folks.

Its the system you put your kid into by calling the police on them. Police don't have choices in a lot cases and the system around them has a lot of rules that capture people in them for years.</comment></comment></comment></comment></comment>


Ask HN: Should I learn C++ in 2019? - <AUTHOR> <comment><USER2> Depends what you want to do. I love writing C/C++ still and it still drives the majority of things you interact with daily, especially low level systems. People argue that all the time, but almost every device you touch has a micro controller today and almost all of those are using C or C++. Even large complex systems still use C or C++ as a primary toolset still to this day.

My 2 cents, if you get out of the echo chamber of SV and tech startups C/C++ are still very much alive and in many cases growing in usage. Inside SV and tech startups C/C++ are both treated like the elderly family member people just put up with but dismiss, when in reality that person has a shit ton of knowledge everyone could learn from.

<comment><USER3> I have been weigh which is the easier language to write lexical, parser and code generation for a new programming language. Is C or C++ the idea to start?

To compile to machine code, not bytecode.

<comment><USER2> You'll find many compilers and parsers are written in C, it gives great portability across platforms and gives the best performance. Whether you write in C or C++ I'd think is more a matter of design choices for a parser and code gen tool. I'd probably go with C++ myself, but either is completely reasonable. You'll also be able to find lots of examples online in C/C++.

Also in this case while there are some compiler differences between platforms for C/C++ they are well documented and known. If you stay in the middle of the language and don't try to use fringe features of the language or a specific compiler then you won't have any issues. People that complain about portability or GCC etc are generally using language extensions of a specific platform compiler which can make portability a pain.

<comment><USER3> Thanks, I have seen Lex, Yacc, Bison, do they still used in the industry?

Some used LLVM and some used GCC/Clang, I'm splitting over which is a better choice to build "statically typed" programming language.

<comment><USER2> I'd argue it is mainly personal preference. But it goes to my point that if you stay in the middle of language features and don't use compiler language extensions it won't matter.

When I set my projects up I generally use gcc/g++, but that in no means is the only correct way. Just a personal preference given the number of platforms that gcc supports, including embedded.

</comment></comment></comment></comment></comment><comment><USER4> As always, depends on what you're doing/planning to do. It's a widely used language that I doubt will become irrelevant anytime soon if that's what you're asking.

</comment><comment><USER5> Yes - it's valuable language that will really be valuable in helping you reason with code in the future... it's a real shame colleges started using java instead of c and c++ as a starting language. It's helpful to understand the building blocks that get us to languages like java or interpreted languages like python and ruby...

</comment><comment><USER6> Let's discuss economics.

Does anybody have any data or anecdotes about the relative market value of C++, Java, and Go?

C++ work seems to have an odd bimodal split. All the kernel and low level hardware work seems to pay a fraction of what FAANG pays.

But at the same time, the majority of significant systems at Google are in C++.

Thoughts?

</comment><comment><USER7> If you have any curiosity about how computers work and you haven't written anything that low level, I'd recommend it. A lot of the modern interpreted and garbage collected languages hide a lot of features of programming from you and I personally think it's important and valuable to learn.

</comment><comment><USER8> Yes, learning anything is always a good idea, expands the mind. I'd say the same thing about any language. Too many people just stick to one, and they act like its going to solve the worlds problems if everyone just does it their way.

<comment><USER9> I think it really depends on context. In general, it is always a great idea to learn, but we live in a society where there is a lot more to learn than time.

If a non-programmer asked me if he should learn C++, my answer would be "Only if you really, really want to. Otherwise Python, Javascript or Rust is probably a better idea".

If someone has a specific project in mind, C++ might be the answer, although probably in a minority of cases.

If someone just wants to expand their mind, then sure, why not. But there might be equally or more interesting things around, that's something that can only be retrieved from context as well.

Learning is always good, but there are subjective, qualitative nuances to be considered.

<comment><USER10> "Python, Javascript, or Rust"

I feel like Rust does not belong in this list. Why would you introduce a non- programmer to Rust?

</comment></comment></comment><comment><USER11> There is no other language that will teach u e.g. templates. And the language is still in heavy use. What is there to lose here?

<comment><USER12> Many popular languages have templates (generics): Java, for instance.

<comment><USER13> I wouldn't compare it like that. Templates are more like meta-programming. Templates can achieve what you can do with Java generics, but they can also do a lot more.

<comment><USER12> I wouldn't learn C++ for the templates. Except you want to learn stuff by getting your hands dirty. The same would be to learn C for trying out pointer arithmetic and shooting into your own foots ;-)

</comment></comment></comment></comment><comment><USER14> If you're learning it just for the sake of learning it, I'd probably choose something like Haskell. You'll learn to think a little differently. Laziness, pure functions, immutability, etc

If you've got a specific project or job in mind then sure.

<comment><USER15> Haskell is great for this.

Common Lisp too for a very different perspective. Swap your powerful type system for a powerful macro system. Then decide what you prefer!

And finally idiomatic Javascript (i.e. don't use classes!). People have wrote you don't need static types if you have great tests, so I want to think about that idea. I always keep an open mind.

</comment></comment><comment><USER16> You should, along with Java, Python, Ruby, Bash, JavaScript, Go.. The only language I think that doesn't really have a place would _maybe_ PHP.</comment>


Boardwalk: Port of _why's Park Place using Sinatra and MongoDB. - <AUTHOR> http://github.com/razerbeans/boardwalk

<comment><USER2> In case you are wondering what this does, Park Place replicates a lot of the functionality of Amazon S3.

Edit: link with more explanation ([http://web.archive.org/web/20070114030611/code.whytheluckyst...](http://web.archive.org/web/20070114030611/code.whytheluckystiff.net/parkplace/))

</comment><comment><USER3> I always thought Park Place was always one of _why's hidden gems (no pun intended… except for now that I've pointed it out, I suppose that was intended).

Boardwalk is a fantastic name for the project.

</comment><comment><USER4> How funny! I've been re-writing the site for Hackety Hack in Sinatra with MongoMapper! It's been a real joy. And so performant!

<comment><AUTHOR> Sounds really interesting. Do you have a link to a repo by chance?

<comment><USER4> It's only on my fork at current, as hacketyhack/hackety-hack.com is what's deployed right now.

<http://github.com/steveklabnik/hackety-hack.com></comment></comment></comment>


Artificial Intelligence Lecture Videos - <AUTHOR> https://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-034-artificial-intelligence-fall-2010/lecture-videos/ <comment><USER2> On just a quick glance, the breadth of the topics covered here is stunning.

I also liked this quote from Lecture 23.

> A lot of times we ... confuse value with complexity.

> And many of the things that were the simplest in this subject are actually > the most powerful.

> So be careful about confusing simplicity with triviality and thinking that > something can't be important unless it's complicated and deeply > mathematical.

<comment><AUTHOR> Nice observations. The trade off is he doesn't go too deeply into anything, but it's a great survey. Especially for people not acquainted with AI outside of ML.

</comment></comment><comment><USER3> Professor Winston (the lecture in these videos), also teaches a higher-level, seminar based AI reading class called "The Human Intelligence Enterprise".

It too, is an incredible class. Here's the schedule & linked papers from last semester: [https://courses.csail.mit.edu/6.803/schedule.html](https://courses.csail.mit.edu/6.803/schedule.html)

(Disclaimer: Professor Winston is my current advisor)

<comment><AUTHOR> Could you recommend any good books that would supplement this course? Also, why does this course seem so weird. What's with the "communication" assignments. Also, what's the deal with his project "genesis." Really interesting stuff. I hope I get a chance to pick your brain.

<comment><USER3> Minsky's Society of Mind would be a good launching off point. Other than that particularly famous example, I would just check out any of the authors of the papers in that link.

This class fulfills a communication requirement at MIT, so there are a one- page response/reflections due at each class. These reflections basically just ensure that you have a decent grasp at the main points of the paper, so that you would be ready for a seminar-style discussion in class.

Genesis is pretty interesting. Here's a link to the details: [http://groups.csail.mit.edu/genesis/](http://groups.csail.mit.edu/genesis/) But in short, it's an attempt to get computers to understand stories — and to discover what is the fundamental difference between the human mind and all other animals (spoiler alert: Winston's group believes it's the ability for humans to take two concepts and merge them into a new concept, indefinitely. AKA: creating "stories"). So the goal of Genesis is story-understanding.

<comment><AUTHOR> Thanks for the link. I read through the three main papers. Very interesting. The project seems to be dead though. Why hasn't there been any development in the past few years? Did you guys reach a hurdle you couldn't overcome? Or have people's interests shifted? Thanks for taking the time to answer Kenneth.

</comment></comment></comment></comment><comment><USER4> I took this class given by Prof. Patrick Winston a while back, 43 or 44 years ago. I liked it so much back then, it served me well in grad school and for many years after. Next week I'm visiting with an AI company on behalf of potential investors.

<comment><USER5> You took the class 43-44 years ago? Is that a typo? If not, mind sharing more about your experience?

<comment><USER6> I took his AI class, 6.258, 45 years ago, in the Spring of 1971. It was probably the first or second time he taught it. He's a great teacher and inspired me to focus on AI. One aspect I remember was that our exams were all take home exams that we had several days to work on. They were great learning experiences.

<comment><USER5> Amazing :)

Wish you listed a method of contact. I really enjoy having conversations with more experienced hackers.

</comment></comment></comment></comment><comment><USER7> Lecture 15 is really really worth watching through, even if your not familiar with the previous lectures

[https://ocw.mit.edu/courses/electrical-engineering-and- compu...](https://ocw.mit.edu/courses/electrical-engineering-and-computer- science/6-034-artificial-intelligence-fall-2010/lecture- videos/lecture-15-learning-near-misses-felicity-conditions/)

<comment><USER8> Just wondering why do you recommend this particular lecture so highly ?

<comment><USER3> I'm guessing, because the back half of the lecture has some great life lessons in it.

<comment><USER7> Yes exactly, I was not expecting a deeply useful life lesson at the end of a random AI lecture I found on YouTube.

Really stands out as one of the best lectures I have had the pleasure of watching.

</comment></comment></comment></comment><comment><USER9> If you are interested in zooming into neural networks, at Coursera Hinton himself will teach you a great deal of things: [https://www.coursera.org/learn/neural- networks](https://www.coursera.org/learn/neural-networks)

</comment><comment><USER10> This is a terrific class. I also recommend: [https://ocw.mit.edu/courses/electrical-engineering-and- compu...](https://ocw.mit.edu/courses/electrical-engineering-and-computer- science/6-042j-mathematics-for-computer-science-fall-2010/)

</comment><comment><USER11> I have a side project to monitor the homepage of every domain and I want to detect the type of site - ecommerce, blog, forum etc. I've just started on it and ultimately I want to be able to automatically extract data, such as product information from ecommerce sites. Would these videos help here or is there anywhere else that someone would recommend. I know I sounds very naive here... and I am, but there might be someone here who can give me a steer. I've started looking at AI/ML... or whatever its now called and getting a bit confused!

<comment><USER12> You could absolutely do it. Here's a few things you could do to get started (feel free to email me if you need more specific help, or have any additional questions- my email's in my profile):

1\. Get as much data about each site as possible. Try to find data that you think will separate the non-ecommerce sites from the ecommerce sites. This data should be in a table form- think of an Excel spreadsheet, where each row represents a different site.

2\. Label the data as belonging to each type of site. This is going to be tedious and take some time. You can also try hiring people via Mechanical Turk to do this.

3\. Use [Weka]([http://www.cs.waikato.ac.nz/ml/weka/](http://www.cs.waikato.ac.nz/ml/weka/)) or [Vowpal Wabbit]([https://github.com/JohnLangford/vowpal_wabbit/wiki](https://github.com/JohnLangford/vowpal_wabbit/wiki)) to run some preliminary estimations on the model. Weka and VW are great tools as they come with a lot of the configuration done out of the box, so you won't have to write any code to get started.

Check your results and see how happy you are with them. Weka has a lot of visualization capacities, so you can see how the data that you've collected aligns with the different types of sites.

Now, you can start iterating, which is the key part of any ML project. Consider which aspects of the model you think you can improve on- adding more data, adding more kinds of sites, using a different machine learner.

<comment><USER13> > 1\. Get as much data about each site as possible. Try to find data that you > think will separate the non-ecommerce sites from the ecommerce sites. This > data should be in a table form- think of an Excel spreadsheet, where each > row represents a different site.

This will be the hardest step. Feature extraction from html for identifying specific things like products, for any given site, is very hard (in my experience, which I will admit is pretty limited). Would love to be proven wrong though.

<comment><USER12> I was thinking you could approach it as a document classification problem, where you extract the text from the HTML and work with that.

I had a lot of success finding duplicate bug reports by comparing the text from the bug reports with reference documents in a variety of topics (e.g. security, networking, C++), and getting a sense of how similar the text is to the reference text. That gives you a score of how relevant each subject is to the document.

You could do something similar here- download the text from 10 ecommerce sites, run some sort of topic extraction algorithm (like LDA) on it and then compare the text from the sites you're trying to classify with the text from the reference sites.

</comment></comment></comment></comment><comment><USER14> _MEGA-Recitation_ Videos :-)

[https://ocw.mit.edu/courses/electrical-engineering-and- compu...](https://ocw.mit.edu/courses/electrical-engineering-and-computer- science/6-034-artificial-intelligence-fall-2010/mega-recitation-videos/)

<comment><USER15> Wow, are you my doppelgänger? We share the same name and I was about to post the same link.

</comment></comment><comment><USER16> I took this class a couple of years ago. It's outdated and overrated imho, with nowhere enough mathematical rigor to be useful. For example, the discussion of support vector machines (and classification in general if I recall correctly) was limited to two dimensions so that you didn't need linear algebra. The class also spends a lot of time on problems like path finding that you should be able to solve with your standard CS algorithms toolkit or just "logic" rather than needing to reach for anything that deserves the name "artificial intelligence" (at least today). Prof. Winston furthermore spends way too much time on vague truisms that may sum up or organize what's in his brain but aren't helpful to students. ("What if the answer doesn't depend on the data at all? Then you've got the trying to build a cake without flour.")

I hate to dismiss something as ambitious as this course and just tell people to blindly follow trends, but my honest advice would be to just skim these notes if you're interested and go take a normal machine learning course instead.

<comment><USER17> It depends on what you want out of it! If you're looking for immediately practical skills, of course you're better off taking 6.036 (machine learning). That's not the point of 6.034, which is something more vague that emphasizes intuition over rigor. Personally I think that offering both - a skills- oriented class and an idea-oriented class - is super cool and unique and I wish that pattern was more common.

</comment></comment><comment><USER18> Anyone has lecture 20? - "Lecture 20, which focuses on the AI business, is not available."

<comment><AUTHOR> Good catch. I can't seem to find it either on YouTube.

<comment><USER10> According to a YouTube comment... Prof. Winston did not allow OCW to share that lecture, no reason was given.

<comment><USER19> He's keeping a competitive advantage for MIT students probably :)

</comment></comment></comment></comment><comment><USER20> Does anyone think these lectures would be a good place to start for someone with web development experience (LAMP + JS) and zero AI & ML knowledge ?

If yes, what is missing from these lectures ( related to AI or ML or Deep Learning ) which has been discovered or developed recently and should be learned during the start ?

<comment><USER10> It's a great introduction to the broader world of AI, but you will barely skim the surface of ML.

<comment><USER20> What would you recommend then ?

<comment><USER10> Andrew Ng's ML course and Chris Olah, Andrej Karpathy, and Jeremy Kun's blogs were great resources that contributed to my understanding of ML.

</comment></comment></comment></comment><comment><USER21> Wow! Taught by Patrick Winston, he was the author of my AI textbook many moons ago! You can still meet many of the legends of Computing Science...

</comment><comment><USER22> Amazing! I hope you don't mind but I cross-posted to /r/artifical. Thanks for the videos! This will make sure I get nothing done tonight but I should be smarter in the morning!

</comment><comment><USER23> One day I hope to have enough time to go through a majority of OCW!

</comment><comment><USER24> What are requirements for this course?

</comment><comment><USER25> you can find all of the videos in this youtube playlist - [https://www.youtube.com/watch?v=TjZBTDzGeGg&list=PLUl4u3cNGP...](https://www.youtube.com/watch?v=TjZBTDzGeGg&list=PLUl4u3cNGP63gFHB6xb- kVBiQHYe_4hSi)</comment>


Ask HR:  Review Lissn, my bootstrapped minimum viable product  - <AUTHOR>

Lissn is an instant conversation platform I launched at TechCrunch50.  I have since stripped it of all its features and now re-releasing it as a mvp.  I would love your feedback.
http://www.lissn.com
Lissn lets you chat with random people around the world in groups of 3.  Everyone is anonymous and anyone can Lissn.  People can see 2 things about you automatically:  Where you are in the world & what site you came from.  It uses Chatroulette/Omegle mechanics and we are releasing one new feature every week.  There is no signup, you just begin.
I would love to hear your thoughts and feedback.  If you enjoy it, please upvote :)
Thanks Myke <comment><USER2> My thoughts:

1\. the video on the front page is just sound not video as I was expecting.

2\. I would prefer it if the interface was more like IRC, so each comment went at the end of the previous one.

3\. I didn't understand what "stabd up" means.

<comment><AUTHOR> What were your thoughts on the video? I didnt understand..

Stand up means you become a lissner. Imagine 3 chairs in a room, you can only talk when youre sitting down. :)

Thanks for checking it out and writing a review!

<comment><USER2> > _What were your thoughts on the video? I didnt understand.._

There wasn't a video (at least, not for me). It was only sound, no picture, which disappointed me a bit because I expected one.

<comment><AUTHOR> Ahh... interesting. There is a Vimeo video, that is strange there is no sound. Are you on an ipad or iphone?

</comment></comment></comment></comment><comment><AUTHOR> Heres the interview I mentioned: <http://www.youtube.com/watch?v=1p3vcRhsYGo>

</comment><comment><USER3> This is interesting. I'm curious, why did you decide to strip all features and re-release as a mvp?

<comment><AUTHOR> Each release didnt catch on and it was getting harder and harder and more complicated to continue. After learning about the mvp I realized I should have something even without all the features. Once everything was removed it became clear the best conversations were happening when there was 3 people and thats all that mattered. So the mvp was 3 people can talk, anyone can lissn. :)

<comment><USER4> You could have a topic of the day :)</comment></comment></comment>


Drug that activates only your father's version of a gene - <AUTHOR> http://arst.ch/rxe

<comment><USER2> May want to fix the title. Jeans = pants. Genes = DNA.</comment>


Ask HN: Anyone interested in hosted url shortener for custom domain? - <AUTHOR> I wanted a url shortener for my custom domain but surprisingly couldn't find a great hosted option that wasn't phenomenally expensive. So I built one using AWS (S3 serves the redirects). Easy to use and no maintenance required.<p>Anyone interested? (if so I'll put it on a domain and make it publicly available) <comment><USER2> For what it's worth, any domain registered at GoDaddy can be used free as a URL shortener: [https://shortener.godaddy.com/](https://shortener.godaddy.com/)

<comment><AUTHOR> they have an arbitrary (and low) max on shortened urls. i believe it's 5000 :-(</comment></comment>


Why is Stack Overflow so negative of late? - <AUTHOR> http://meta.stackoverflow.com/questions/251758/why-is-stack-overflow-so-negative-of-late?cb=1

<comment><USER2> Could it be that too many people see it as a way to get answers from homework?

I feel programming is like voting, if people aren't motivated to do it, I don't want them in the profession (or at the polls).

That's why I hate the "Get out the vote" efforts as well as "Teach people to code" movements. I'd like to see more self-motivated people that are interested in coding (not a well-paying job). I think this is what's happened to the law profession, too many lawyers that didn't want to practice law, just people who wanted a big paycheck and a couple of letters at the end of the name.

I think a lot of these new users asking dumb questions are those types of people, they shouldn't be in the profession imo.

</comment><comment><USER3> The whole idea of closing questions seems rather odd, if a question isn't useful then no-one is going to look at that page, no problem. I think the majority of people end up on stackoverflow pages from google anyway and google is more than capable of filtering the content accurately.

<comment><USER4> One cannot add an Answer to a Question that has already been closed, which is the idea I think. There are also many kinds of useful, and Stack Overflow moderators are not interested in all of them. Programmer jokes are useful in that they can funny, for example. And they were very popular.

</comment></comment><comment><USER5> I saw this earlier and it is amusing that the entire thread acts as a perfect example about what is crap with Stack Overflow these days.

Loads of comments and replies, basically being in denial that there is any sort of problem, telling us why it is better this way, and why it shouldn't change. Not addressing (or even acknowledging) the problem any way.

If a question has a few hundred upvotes, and gets closed by one moderator because it is off topic/ not constructive in his opinion, then the site is failing (in this instance) at what it claims to be good at.

</comment><comment><USER6> StackOverflow has, for as long as a I've been using it, been a sewers of low quality questions.

What got me to stop using it on a regular basis (twice) was the unwillingness of the devs to provide tools to ignore the trash and the inability to ask any even remotely useful question on grounds that they're opinion-based.</comment>


Undersea Internet Cables Are Surprisingly Vulnerable - <AUTHOR> http://www.wired.com/2015/10/undersea-cable-maps <comment><USER2> This isn't exactly new news. I'm not sure how you could actually protect them though.</comment>


Ask HN: What can I do for my family living away on a natural disaster? - <AUTHOR> Istanbul has been experiencing multiple strong earthquakes since yesterday and the fault line is the main fault line that was expected to get activated for years already. I live in Europe, in a country that has no danger of earthquakes or anything, but my whole family still lives in Istanbul. Today, there was an earthquake of 6.0 on Richter magnitude scale (RMS), and all the mobile line providers were down because of the traffic, including internet connection as well, and this was a case where the earthquake was much smaller than the big one expected. This whole thing got me thinking, and the more I thought the more depressive I got because of our helplessness against nature.
What can I do to communicate with my family in an extreme case like this? What are the precautions we can take in order to account for these cases? I don't think the phone line will ever work between them or for cross-border calls, I doubt that WhatsApp or internet, in general, will work under that load as well, let alone the fact that internet infrastructure itself might get damaged, and at this point I am out of options for hearing from them.
My questions are: - What can we do as a family to ensure the highest possibility of having communication in a case like this? - What can I do as an individual with tech skills to make even some tiny thing better in the case of a natural disaster? - What/how should I educate my family for cases like this?
This is a topic where I guess human mind tends to ignore thinking as a self-protection mechanism when you are in the endangered area since it leads to a rabbit hole where all you can think of is the catastrophic scenarios that don't lead to any solutions and it seems like there is nothing you as an individual can do to make things better. I am in a similar mindset since I am out of the danger zone but my family is in it, so any kind of input here is appreciated. <comment><USER2> Satellite phone is the only thing I can think of for communication.

Or perhaps ham radio would work, but you need power to run it, so your family would need some batteries. (I don't know if that's actually feasible. _Can_ ham radio be run by batteries? If so, for how long?)</comment>


First 4 Women In History Complete US Marine Training - <AUTHOR> http://www.businessinsider.com/four-female-marines-pass-infantry-training-2013-11

<comment><AUTHOR> I've run marathons and I am pretty sure I could not do this:

 _12 1 /2 mile march in combat gear, no more than 5 hours while hauling almost 90-pounds of gear, at nearly a 4 mph pace (almost a jog), rifle included_</comment>


The Miracle of Applied Mathematics (2001) [pdf] - <AUTHOR> http://www.colyvan.com/papers/miracle.pdf <comment><USER2> Mathematics wasn't unreasonable effective until the invention of the calculus. Indeed, mathematics-led physics was circling the drain with epicycles.

As it turns out, the calculus has a good correspondence with the idea of dynamical systems. No surprise that it was invented together with modern physics and to serve modern physics.

<comment><USER3> Indeed it was always effective. Geometry was indispensable in architecture, mechanics, and geography; arithmetics, pretty much everywhere.

</comment></comment><comment><USER4> > decline of formalism as a credible philosophy of mathematics

I suppose someone who's writes a paper about mathematics anticipating physics would not be a formalist, but to say formalism is not credible is a bridge too far. As far as I know, Hilbert formalism[0] is the _only_ credible philosophy of mathematics. Hilbert's approach to axiomatic systems led to Gödel's work and ZFC; on the contrary, rigorous attempts by non-formalist to assign meaning to logic and mathematics have largely collapsed after (for example) being unable to define numbers in terms of logic[2] (Frege) or to be consistent with its own principles[3] (Russel). And non-rigorous attempts, such as those described in this paper, have never then gone further than handwaving and saying "isn't it amazing? Don't you think it's unlikely?" which is nothing more than the fallacious "argument from incredulity."[4]

In a sense formalism is the Cartesian skepticism of the philosophy of mathematics: a secure position to which you can always return if pressed, and from which one sally's forth only a great risk.

My current understanding of the philosophy of science is that we have Popper's Falsificationism[5] on the one hand, mathematical formalism on the other, and a gap in the middle with a warning label stuck on it that says "Use mathematics to describe your models at your own risk! Management assumes no liability!"

[0]: [https://en.wikipedia.org/wiki/Formalism_(philosophy_of_mathe...](https://en.wikipedia.org/wiki/Formalism_\(philosophy_of_mathematics\)#Hilbert's_formalism)

[1]: [https://plato.stanford.edu/entries/frege- hilbert/](https://plato.stanford.edu/entries/frege-hilbert/)

[2]: [https://plato.stanford.edu/entries/frege- theorem/](https://plato.stanford.edu/entries/frege-theorem/)

[3]: [https://www.reddit.com/r/philosophy/comments/10iy83/why_did_...](https://www.reddit.com/r/philosophy/comments/10iy83/why_did_logical_positivism_fail_what_is_the/)

[4]: [https://en.wikipedia.org/wiki/Divine_fallacy](https://en.wikipedia.org/wiki/Divine_fallacy)

[5]: [https://plato.stanford.edu/entries/popper/](https://plato.stanford.edu/entries/popper/)

<comment><USER3> Formalism is not a good philosophy of mathematics - because it is a rather extreme form of reductionism, and because as such it fails to address the issue of the "unreasonable effectiveness of mathematics."

</comment></comment><comment><USER5> I think math is applicable for the same reason that scientific theories are applicable; both are stark abstractions compared to the amount of parameters at play, so why they able to model the phenomena?

</comment><comment><USER6> Modal structuralism[1] is a tragically underappreciated interpretation of mathematics that leaves nothing mysterious about the correspondence of math and nature.

[1] [https://plato.stanford.edu/entries/nominalism- mathematics/#M...](https://plato.stanford.edu/entries/nominalism- mathematics/#ModStr)

</comment><comment><USER7> From an AI point of view, All subjects are mathematically dressed in camouflage. For a person with good mathematical thinking and multiple interests, you can learn a lot of subjects in a very short period of time and integrate them.

</comment><comment><USER8> In my own impression, math is best done with total disregard for applicability, which is to remain entirely accidental.

Concerning "The problem is epistemic: why is mathematics, which is developed primarily with aesthetic considerations in mind, so crucial in both the discovery and the statement of our best physical theories?"

Abandoning the primary goal of "aesthetic considerations" would undoubtedly lead to such math becoming unusable, or even degenerating into non-math.

Therefore, I believe that in everybody's best interest math should stick to its own goal of exploring mere aesthetics.

<comment><USER9> You've missed a step here. No one thought to do math until people started to seriously worry about proportions, distance, quantity, time, etc _of_ the natural world. Once you've set up those rules (and necessarily rigged them in favor of explaining the natural world) you can stay in the platonic realm, change the rules so they apparently stop reflecting reality, and rely on your sense of aesthetic, but then I think the onus is back on you to explain where this sense comes from.

</comment></comment><comment><USER10> Arithmetic has been important for the progress of science to date — but I wonder if it will remain so in the future. It seems to me like should quantum computers/programmable quantum simulations ever arrive — arithmetic will disappear from theory as constituent operations of nature (which include in their very observability, limits on knowledge and boundaries on errors) become the language in which theory is written and from which predictions are made.

<comment><USER11> Quantum computers are not exactly what people imagine them to be. For one, they're not for all purposes but for niche uses by their very nature (e.g. that's not something we can invent our way out in the future).

And they depend on shitloads of regular algebra and arithmetic to create and program them.

In fact, Quantum Physics is a huge user of math.</comment></comment>