todombo.com - todo dashboard with widgets instead of todo lists - <AUTHOR>

Hi Everyone.
I want to describe an idea of todo dashboard. Everyone knows about todo websites like rememberthemilk.com, todoist.com and others. In our opinion, this approach lacks expressiveness, and it would be great if you could write down something like "Meet Bob at 8pm" and system understands who Bob is and that 8pm is actually 20:00.
This brings us to the idea of widgets - cards that represent different types of tasks like meetings, deadlines, notes, bookmarks etc. and dashboard on which these widgets can be placed.
Depending on a task type widget has different representations and functionality, but the main point is to show user information about his tasks not in plain text.
We have created a prototype of the application - todombo.com.
Our current version supports only one type of widgets - simple cards with title and description. Any feedback would help us a lot since we don't understand whether this idea makes sense to other people or not.
Thank You. <comment><USER2> How does this work? All I see is your logo, a bunch of clouds that move around when I move the mouse around, and a couple of social buttons. Clicking on the clouds doesn't seem to have any effect... (I am using Chrome on WinXP.)

<comment><AUTHOR> Those two buttons are actually login buttons. You can login with your facebook or google accounts. It is probably not clear enough =(. Sorry for the confusion and thanks for the comment.</comment></comment>


Zoom Isn't Malware - <AUTHOR> https://medium.com/@0xamit/zoom-isnt-malware-ae01618e2046 <comment><USER2> I'm still more of a Jitsi user ([https://meet.jit.si](https://meet.jit.si)), but this post is a great overview of how people have overreacted and not given Zoom credit for taking people's concerns seriously.

The list of a dozen things related to securing Zoom sessions is probably the most practical part of that Medium post.</comment>


Ask HN: Multi-Monitor w/ Laptop? - <AUTHOR>

I've been running two monitors on my desktop pc for a few years now and I really like it. In fact I'd say it's a requirement for me.
My next pc purchase will in all likelihood be a laptop. When I'm at home (or at the office) I'd like to maintain a multi-monitor setup with my 2 LCDs. My first thought was to use a docking station to pull this off.
Has anyone had any luck running a laptop in a multi-monitor scenario using a docking station? Are there any docking stations out there that support this?
If found this...
http://www.digitaltigers.com/sidecar.asp
...but it seems kind of expensive.
Any thoughts? Recommendations?
Thanks! <comment><USER2> I've got a standard Dell docking station with both an external monitor and the laptop's LCD panel working together. It was pretty straightforward. The only tricky bit for me (on Ubuntu) is not being able to directly undock and have it intelligently deal with the disappearance of the external display. I still don't have a good solution for that one.

<comment><USER3> At my old employer I used to have a Dell (620 I believe).

The docking station had a DVI and VGA output. You could either:

1\. Run two LCDs off the VGA and DVI.

2\. Run one LCD off either and the laptop screen.

I was doing #1 successfully.

</comment></comment><comment><USER4> I run 3 monitors.

1\. Open Laptop 2\. 22" Widescreen LCD connected to laptop 3\. 17" LCD to a desktop computer

Desktop and Laptop share a keyboard and mouse using Synergy. <http://synergy2.sourceforge.net/> which makes it seamless to use!</comment>


IncludeOS roadmap: tiny Node.js-style web services in highly efficient C++ - <AUTHOR> https://github.com/hioa-cs/IncludeOS/wiki/Roadmap <comment><USER2> I love watching the pendulum swing back and forth in tech.

From mainframes to pc's ... to thin clients ... to server rendered HTML ... to client side frameworks ... to microservices

I'm sure I could come up with more examples. I was just thinking of re- architecting a heavy apache web head app into unikernel super light micro services. It just makes me chuckle as we swing back and forth and try to find the right balance. Each generation sort of saying "Hey wait there's a CPU over here on this side of the diagram and it could do X/Y/Z".

Recently I've been working on Raspberry Pi's so much that when I logged into a nice medium sized EC2 instance I was "shocked at how responsive these are". LOL. I started on machines with 4k of memory and built systems that consume TB of ram across many nodes and data centers. It's fun to go back to my roots trying to cram something into an ESP8266 nodemcu device and thinking about how long I can run it on a LiPo battery. I think this back and forth is good for us, but I encourage everyone to spend time on micro devices to remember just how simple you can solve a problem when confronted with the reality of 20k of ram and 4M of flash storage.

</comment><comment><USER3> I wrote something similar a while ago, combining the easy-to-use asynchronous programming model of Node.js with the speed of C++.

[http://gladdy.github.io/c++/2015/07/26/NodeDemystified- pt1.h...](http://gladdy.github.io/c++/2015/07/26/NodeDemystified-pt1.html)

source code: [https://github.com/Gladdy/Mininode](https://github.com/Gladdy/Mininode)

<comment><USER4> The example looks really clean. Amazing how far modern C++ has gotten in that area.

<comment><USER5> Losing memory safety is a pretty big deal though.

In particular, the capturing semantics with [&] are going to result in a big surprise (use after free) if you try to close over and capture variables like you do with node.js.

<comment><USER4> Got no expertise there. I always assume it with C or anything derived from it. But C++ commenters here keep telling me modern C++ and its libraries have all kinds of ways to prevent common issues with memory. They've demonstrated a few. So, I'd be curious to see a comparison of what happened in practice between the two.

That said, typical C++ applications might be easier to get right than Javascript runtimes, JIT's, or whatever. A lot of eyes go into the JS foundations but so do a lot of complexity and problems.

<comment><USER6> To add my input to pcwalton.

It is true that modern C++ with the proper tools can mitigate many of the issues that come from C heritage.

The sad reality is that despite the tools that C++ offers for memory safety, the majority of enterprise developers don't buy into them and the code looks more like C with classes than anything else.

If you look at CppCon 2015 when Herb was presenting the Core Guidelines and the new VSC++ static analyzers, only 1% of the audience said they ever used one.

<comment><USER7> From what I have seen, the issue is that in big risk-adverse entreprise, the mentality of "don't change anything if it works" goes a bit too far.

I feel a bit ashamed, but to give you some rough idea of the age of the toolchain, the c++ compiler we are using does not even support namespace. We are slowly fazing out old platforms but this is really a long drawn struggle. Basically you have to wait that the underlying HW is not produced anymore for 10 years, before maybe thinking the SW side should be upgraded.

I would be very eager to use some nice feature of Cpp11 but it won't be in this company...

<comment><USER6> No reason to be ashamed, I have seen many companies that only use platform SDKs (e.g. aC++ on HP-UX) and IT has the last word over what tools are allowed on dev machines.

However the situation is no different in other languages.

I am aware of some companies still using Java 5 on production, just to cite one example.

<comment><USER4> I know one major retailer whose terminals are all a DOS variant whose sales ended in 1999 and whose inventory is hard-tied to SCO UNIX. Got future-proof written all over those. ;)

Note: Many key operations, including the backend, are on AS/400 and mainframe. Much wiser choices. Needless to say, the employees tell me _that part_ never goes down.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER8> Sounds a little bit crazy to me at first but when thinking about it, it is a nice idea.

May you should take a look at Rump Kernels and build your stuff on top. Then you do not need to implement the OS stuff - It's done already. May I am wrong but it seems to be a similiar idea but the following project is currently at the OS level only but some applications like ngnix are working already. I was very confused when I first read about Rump Kernels and after reading a while and watching some conference talks a lot of stuff made sense to me even if I do not understand in detail what they are doing.

[http://rumpkernel.org/](http://rumpkernel.org/)

[https://github.com/rumpkernel](https://github.com/rumpkernel)

<comment><USER9> This seems more like MirageOS/Ling than a rumpkernel. From what I remember, rumpkernels are more general, at the cost of being less "unikernel-y" (i.e. lean and fast). I agree that it would be easier and faster to use a rumpkernel if the intention is use in production _soon_.

I can't tell if this is a research project, or intended to be production quality at some point.

<comment> vive-la-liberte >I can't tell if this is a research project, or intended to be production quality at some point.

Found this on their website [1]:

>IncludeOS is the result of a research project at Oslo and Akershus University College of Applied Science (hioa.no)

>IncludeOS is not production ready - but we're working hard to become so.

[1]: [http://www.includeos.org/](http://www.includeos.org/)

<comment><USER9> Thanks, I didn't catch that. I'll have to make some time to play with this, especially once it gets further along.

</comment></comment></comment></comment><comment><USER10> At first it seemed strange that a Node.js-replacement needs a full IP stack including DHCP.

As far as I understood this, they are building a whole operating system to be run in a VM like QEMU which then acts like a Node.js-instance - except that it's programmed in C++ and linked as one whole exeutable which also is a complete OS.

I wonder how this compares to Docker or Sandstorm where the existing kernel API is used in a virtualized container instead of emulating a whole machine.

<comment><USER11> > I wonder how this compares to Docker or Sandstorm where the existing kernel > API is used in a virtualized container instead of emulating a whole machine.

Short answer is probably: Better at security, but less efficient.

Xen bugs notwithstanding, the VM boundary has a better security record than the kernel API boundary. (Though Sandstorm -- my project -- has been pretty successful at dodging kernel bugs through aggressive attack surface reduction.)

The problem with VMs is that they're heavy-weight. The hardware interfaces were never intended to be a clean abstraction boundary between software. For example, it's tricky to reclaim unused RAM back from a VM, because within the VM the guest would by default assume it has a fixed amount of RAM that is exclusive to it. Communication probably has to happen in the form of network packets, requiring setting up and traversing a whole IP network stack in the guest, which is a lot more expensive (in both CPU time and memory use) than pipes, unix sockets, or shared memory would be.

However, if you're designing a kernel specifically for use in a VM, you can probably do better on these things, e.g. you can define some virtual hardware interface by which the kernel marks RAM pages unused so that the host can take them back, or you can define a cleaner communication interface. But as you define these interfaces, your "virtual hardware API" ends up looking more and more like a kernel API -- and has greater risk of security bugs.

So one way (containers) you start out with a wide interface and high efficiency but a large attack surface, and you try to narrow the interface to improve security. The other way (VMs) you start with a narrow but inefficient interface which you try to widen to improve performance.

Eventually they will probably converge.

</comment></comment><comment><USER12> I never been fun of Node.js (neither the hype of writting server-side in awful JS), so sometime ago I've written [https://github.com/alfanick/rest- cpp](https://github.com/alfanick/rest-cpp) \- "tiny Rails-style web services in highly efficient C++" ;) Code has not been updating for some time, but it is near production-ready.

</comment><comment><USER11> I like this idea, but I don't understand describing it as "node.js-style". I guess they think of Node as being a particularly ideal platform for implementing "microservices", but honestly I don't think there's any particular property of Node.js itself that makes it microservice-friendly. To me "Node.js" simply means "server-side Javascript", which obviously this isn't (it's C++).

<comment><USER13> ASP has had server-side "Javascript" for years. The magic sauce in Node.js is the combination of async, JS, and package management.

</comment></comment><comment><USER14> If you're interested in IncludeOS, runtime.js is also worth checking out: [http://runtimejs.org/](http://runtimejs.org/)

</comment><comment><USER15> I thought web assembly was going to be the main part of Node++.

Anyway I would look into Nim or Go if you want a more efficient webserver.

</comment><comment><USER16> Anyone know how this compares to OSv?

</comment><comment><USER17> So... back to CGI programming then. Cool.

</comment><comment><USER18> Just use Rust....</comment>


Is PowerPoint the only option for creating slides to pitch a VC with? - <AUTHOR>

Is it acceptable to create a presentation (to pitch your product) with LaTeX + beamer?  Here are the pros/cons as I seem them:
Pros:
  - PDF files can be opened on any platform
  - If you only use vector based graphics in your presentation it tends to look cleaner
  - You have more control over how to layout your presentation
Cons:
  - You have more control over how to layout your presentation... wasting time?
  - Not immediately obvious that what you are sending is a presentation?
  - Everyone expects powerpoint?
What do you guys think? <comment><USER2> Check out prezi.com. A much better paradigm for presentations as they are non- sequential (or at least it doesn't have to be sequential).

It's flash based, so it is highly likely that anybody can view it, but it is probably best in the environment where you are controlling the presentation.

</comment><comment><USER3> Yeah, don't see why you couldn't use a .pdf, I would just make sure to refer to it as your slide deck in the body of the email.</comment>


Cost Calculator for Mobile App Development - <AUTHOR> https://www.andreasley.ch/en/costcalculator/

<comment><AUTHOR> Here are a few alternatives that I've discovered – _after_ I've written my own version, of course...

[http://www.kinvey.com/app-cost-estimator](http://www.kinvey.com/app-cost- estimator)

[http://howmuchtomakeanapp.com](http://howmuchtomakeanapp.com)

[http://freeappestimate.com](http://freeappestimate.com)

</comment><comment><USER2> I'm not sure those rates are realistic, they seem to be at the higher end.

<comment><AUTHOR> Well, the costs vary depending on a lot of factors. The prices are based on my experiences here in Switzerland.

I've been thinking about adding selections for country and rate, but in the end, I didn't have enough data and decided to keep it simple in the first version. However, I'd be very interested to hear from other developers around the world what they think about it.</comment></comment>


Show HN: Sismics Docs – An open-source lightweight document management system - <AUTHOR> https://www.sismicsdocs.com <comment><AUTHOR> I made this project in my free time a few years ago, to organize my own documents, and then decided to use my newly created company (2 guys) to make a real product out of it.

There is a self-hostable version on Github also (Docker image working out of the box).

The server part is made in Java with an embedded H2 database and a Lucene index, and the frontend is mostly AngularJS.

Feel free to try out the demo and give me some feedbacks!</comment>


Sony Open Devices - <AUTHOR> https://developer.sony.com/develop/open-devices/#overview-content <comment><USER2> But have they stopped crippling the camera when you load aosp?</comment>


How Much Would Mint Be Worth Now? - <AUTHOR> http://blog.redfin.com/blog/2011/02/how_much_would_mint_be_worth_now.html <comment><USER2> It's also possible that they might have closed up shop, or stumbled in some way (ala Digg) that meant they ended up selling for a lot less.

As likely as it is that they would almost certainly be worth more today, the appropriate line in that article is " Aaron Patzer [..] knows more than any of us do about Mint's prospects" -- it was a free service whose revenue prospects were limited to affiliate deals. I don't know how much (if any, Crunchbase tells me nothing here) funding they'd taken, but it's just as likely that they were running out of runway and needed to sell.

Does anybody know if they were even profitable?</comment>


Show HN: Nicetalks - <AUTHOR> https://beta.nicetalks.co/ <comment><AUTHOR> Hi HN! Main idea to test out here is that, by bringing people one-on-one on a chat with an specific subject you both may get to nourish your curiosity and push each other to keep learning of that topic. Beta only provides 2 credits to test. Joining a conversation or creating one costs 1 credit. That's it for now. Thanks!

</comment><comment><USER2> `Error joining` when I want to join chats. And I really have strong opinion about them notifications ;)</comment>


Is a new tech bubble starting to grow? - <AUTHOR> http://www.usatoday.com/money/perfi/stocks/2011-03-16-new-tech-bubble-.htm

<comment><USER2> "He says the enormous size of the social and mobile Internet market — tens of billions of people — dwarfs the markets for the fledgling Internet (billions) and personal computers (hundreds of millions), putting companies such as Facebook, Twitter and Zynga in prime position to strike it rich in IPOs."

Hm, I'm glad to know that aliens are joining the social and mobile Internet market! :D

<comment><USER3> He's lost all sense of scale. If there's anything that should set off bubble alarms it's this kind of blowing things out of proportion.

</comment></comment><comment><USER4> Maybe it's just the news I happen to read, but I've read a lot of "bubble" stories recently, and almost every one brings up the pets.com sock puppet; I don't understand it. Was it just the most memorable (however irrelevant) icon of one of the biggies that happened to fail in that era?

<comment><USER5> It's among the easiest to remember, especially since they had a very popular Super Bowl ad. Pets.com was among the first to go in the bubble, and their very, very poor business plan clearly shows why.

</comment></comment><comment><USER6> He says that companies are overvalued, and they may be. But the difference is we don't have the situation where everyone and their brother is buying those overvalued stocks left and right. Risk is very compartmentalized at the moment, mostly with professionals.

There may be a bit of a bulge here and there, but I do not think it is a true bubble.

</comment><comment><USER7> Good old Useless Today, doing what it does best...being useless.

</comment><comment><USER8> Please, please, please don't use the word "bubble". Ever. Even if there is a bubble going on, and there's definitely not right now, don't ever use that fucking word with regard to technology.

First of all, what we have now is something different. Getting venture capital is still _incredibly_ difficult for most companies. As in, if you have a 4-person startup you'll probably have one or two people working full-time on the funding game, which puts significant drag on technical growth. Not fun. Moreover, most startups I know about describe a tension between true technical excellence (scaling, robustness, and correctness, all of which become critically important in the middle and end game) and chasing the more superficial features that appeal to VCs.

Facebook, along with a few other startups that have capitalized on this bizarre and silly "social" fad, is probably overvalued. Everyday startups are still severely undervalued. It's a different pattern than the one in the 1990s. In the 1990s, people were absurdly optimistic not only about technology, but about the economy and society as a whole. People actually believed, in 1999, that society had permanently transcended the idiocy (um, wrong!) that characterized the bulk of human economics and social relationships throughout history. They were loopy. In 2011, people are dismal and depressed and anxious and only a few of the perennial optimists are starting to perk up (they were always there, but people are now listening to them again; I have no idea whether that's a good or bad thing for peoples' money, but if it's good for smart people with ideas, we must encourage it).

Second, anything that pulls opportunity into the hands of the smart and ambitious, instead of the socially well-connected who usually monopolize it, must be encouraged, no matter what its financial implications are. Anything (except a war) that gives smart people a chance, which most of them haven't had for a very long time, must be encouraged.

<comment><USER9> _Everyday startups are still severely undervalued._

If you believe this to be true, you should immediately invest all of your savings into startups.

 _Second, anything that pulls opportunity into the hands of the smart and ambitious, instead of the socially well-connected who usually monopolize it, must be encouraged, no matter what its financial implications are._

See above. Got your checkbook ready?

<comment><USER8> All of my savings is about $2000 right now. I had $60,000 when I left my last hedge fund job and decided to work for a startup. Great decision with no regrets, but in a world where things like multiple liquidation preferences and participating preferred exist, I think I can say that smart people don't hold enough cards and powerful people hold too many. (Of course, it's best to be smart _and_ powerful, but the number of people blessed both by God and Mammon is, like, seventeen.)

I am working at a startup. Shouldn't that count for something?

<comment><USER10> Where'd the 58k go? It sounds like you need to get some control over your finances if it 'just disappeared'.

<comment><USER8> It didn't "just disappear". I took in far less money, especially in the first year, as a startup founder than my (very modest, by New York standards) living expenses were. My point was that I put this money _into_ the startup effort. An investment of time and money, not a loss. At the present time, however, I can't invest again for a while. So the checkbook is closed.</comment></comment></comment></comment></comment>


Ask HN: Creating a web development agency - <AUTHOR>

Obviously this isn't the most novel idea in the world, but usually on HN it's either people breaking off to create some kind of product/startup or solo-freelancing, but I'm wondering how many people have had success creating a small web-dev company. I've discussed this lately with a developer friend of mine, and both seem to agree that it might be better to form a company and sell our expertise, perhaps target a certain niche. I'm curious how many people on HN eventually took this path, breaking off to form a small group company, as opposed to solo freelancing, startup, or big-co. Thanks. <comment><USER2> The biggest thing you'll want is Value-Based-Fees.

I've written about them here: <http://shipsolid.com/blog/why-value-based- quotes>

You'll run into a lot of people that just want a website for their business/family/dog whatever - 5 pages or so. You can do that, but you'll just end up selling your time for cheap and racing to the bottom.

Don't do that. Instead, develop skills that demand a premium, and meet real business needs by creating money and value for your clients.

</comment><comment><USER3> In my experience, it's very hard to making a living as an 'agency' unless the only value you're adding is to your developers - you leverage the arbitrage between the rate you can bill and the rate you can pay them, in return for a steady paycheck.

I've worked for and with ~20 agencies, including one as a founder and one as a co-owner. In each instance, those that were able to leverage their employees succeeded and those that relied on having talent did not.

It's a very sensible outcome. If you were working at Microsoft or Google, you would be earning ~10% of the value you created for the company. In service, that number is much closer to 50-75%, which is very dangerous unless you can guarantee you're going to make your sales numbers.

It's a great way to get some business experience, but I wouldn't recommend it as a long-term strategy.

It's also important to note that the major ad agencies are moving into the web world. Locally, the regional newspaper, three local radio station companies, and a billboard company are all getting into web development as an added service or for profit. It makes things difficult because they're capitalizing on the medium-to-large agency contracts (the ones that have a web site, TV ads, radio ads, newspaper ads, etc), which are usually the highest margin contracts (lowest ratio of account management to projects).

My advice to you would be to start a consulting company and build relationships with a network of web development agencies. Some of them will be able to afford your rates while others wont, but you wont have to do the hardest part of sales and AR will be much easier because you'll have much more established relationships with these companies. You can also do work for agencies all over your country (or the world) if you are a respectable consulting group.

</comment><comment><USER4> I'm a founder of GroupTalent, so we've seen a lot on this specific topic...

I'd say the two biggest challenges for hackers who want to take projects is lead-generation and sales. They sound simple, but they aren't and you'll waste a lot of time talking to a lot of tire-kickers.

For lead-gen, that just means finding work. Where do you start? There's a few ways to go, you can network with friends, college alumni, startup circles. You could contact incubator companies and ask if they need any extra help, etc. I have to mention GroupTalent too because this is one of the biggest problems we solve.

When it comes to sales, you don't land projects just because you've got "software developer" in your job title. It still comes down to convincing them that you're not going to botch the project, and that's based on what you've done before. They want to see examples of your work, including anything at hackathons (those are good examples of how quickly you can crank out prototypes). The closer it is to what they've done the better because buyers don't buy you, they buy the thing you'd be building them. It's easier to visualize success with you if they see something close.

On the question of whether to work by yourself or as a team, I'd say go as a team. I've seen first hand that not only will you be happier working with a friend, but the idea of getting a package is a big perk for clients. Speed is often a big deal for them, and 2 is faster than one.

Also, clients gravitate towards hackers who can build web apps, not as much static sites. Anybody can code up css/html, but can you build functioning prototypes? Push that as your core skill-set and you'll have a better chance at finding gigs.

Most developers and designers _hate_ spending half their time shmoozing, networking, meeting and dealing with people who just want to meet for the free advice. It just sort of comes with the territory. In the end, success will come from getting access to the right clients, and traditionally that has meant knowing the right people. This is one of the reasons we're building what we are.

Lastly, don't take projects you aren't interested in. When you're building your own product, and working on the side, it needs to be interesting enough that you can power through the finish and earn the paycheck regardless of what's happening with your company.

Oh – and one more thing, payment can be a huge hassle. Make sure to establish payment terms before starting or you might get burned. I know folks who just don't get paid. We make project owners pay up front for teams, we hold it in escrow, and pay out on a per sprint basis. If you want to do something similar on your own without an escrow-like service, you might do half up front before a sprint starts, and then half after each sprint. But seriously, break it down into sprints that deliver functionality costing no more than $5k. More sprints at lower cost is better, it's easier to get them to pay for $3k + $4k +$5k know what I mean? It's progressive cost increase for progressive emotional commitment. Otherwise things have a tendency to go unchecked, and then people change their minds, and it's wasted work, and oh should we pay for that or not, etc etc.

If you have any questions, tweet me @superkinz

</comment><comment><USER5> I think it can be done but have you thought about your competition? I see thousands of such companies driving the price down on a daily basis. Just type Web Development on Google and you will see how many companies pop up on the first page? I have seen international companies who put out ads on adwords for as low as $5/hrs rate. Granted, these companies may not be very reliable but unfortunately they do form a price ceiling. Ask how will you and your partner compete against such low prices?

In my humble opinion, the web development model is highly outsourced model and while I agree that it is broken, you will have to be very careful about entering into it. You should first identify and validate a proper niche that will provide you a steady stream of revenue. The unfortunate and brutal truth is that as soon as you put out your value proposition in you niche to earn a steady stream of revenue, 10 other international companies will simply copy your value proposition and advertise right underneath your ad for much lower prices.

</comment><comment><USER6> Unless you develop very high-valued specialized services (hard), hit a niche market that pays well, or find a way to grow stupidly fast and attract clients in droves, you'll end up wanting to build some kind of scalable product.

Standard services offer diminishing returns. I still believe a healthy business can flourish on it, but it requires a few ingredients:

        - a great team
        - vision (more important than you may think)
        - timing/market demand
        - great sales/marketing
        - will to endure lots of crap

One harder to get than the other.

A product-focused endeavor has higher potential, is more fun an less stressful, although it's also more risky. A service business will almost certainly fly, but going up high is way harder. So, I guess it depends on your personal goals.

(my POV from past few years experience. I might be wrong)

</comment><comment><USER7> I run a small web development business to help fund my startup goals. One tip is to try to tapping the freelancing marketplaces such as oDesk. I have started on oDesk about 2 months ago and now I'm getting enough work to even turn a few potential clients away.

Service business can be grueling and your projects can quickly turn into nightmares if not planned well. The small businesses who want the websites from us can be very vague in what they want, and might not appreciate some of the great stuff that we do (like getting the Pagespeed score above 90) while appreciating lame stuff like those landing page flash intros.

In the initial phase (first 3 months) take more well defined tasks that can have less margins, but can help you appreciate the hardships in the business. As you mature, you can take up more complex projects that can give pretty fat margins.

<comment><USER3> Aren't many of the freelancing marketplaces garbage? I don't want to work for $10 an hour with the risk of not getting paid.

Which marketplaces are better or worse than others? Is oDesk different from the crapfest that is eLance?

<comment><USER7> Not necessarily. I had a few bad experiences with vWorker, freelancer and other market places. oDesk is slightly better than the lot. In oDesk the initial 30 days was working on low priced contracts and couple of times with clients who didn't pay. It was a little painful learning.

But, then I got a little better at identifying the right set of clients and now the I set rate at $33/hr and most of it in hourly contracts that are guaranteed payment. I also take fixed price contracts from clients with whom I have existing relationship. Many guys I know are charging $60/hr and having a good practice.

The thing in the initial phase you come across a lot of noise and as you find out the 1-2 good clients from the 10 shabby ones, you get repeat business from them.

The difference between freelance marketplaces and direct sales is that in the former the clients have a real need, while in the latter the we have to convince the potential leads of the need to have a good website with proper attention to typography, speed and ux.

<comment><USER3> What kind of software are you writing? Is it mostly web oriented? What languages are you using?

<comment><USER7> I typically use PHP and many of my sites are built on Wordpress. I have previously done Web programming before realizing that it can get pretty expensive in terms of maintenance. With quality, premium plugins and themes, you can get a quality site out in about 6 hours and charge $300. I tweak the CSS and PHP of the existing themes to get close to the customer needs and have built a KB and a process internally to reduce the full site development 6 hours what it used to take 25 hours or more.

That is working good so far. It is also easy to maintain, I have WP_MU setup and can update a large number of sites in parallel.

</comment></comment></comment></comment></comment><comment><USER8> a web dev agency is really about selling hours while providing the value add of hand holding and managing projects -- the great thing is that you can mark up the services of freelancers, but the bad side is that you're on the hook if anything goes south (in addition to paying for added overhead). so for example if the client goes under and doesn't pay you, you still need to pay your freelancers. unlike a product driven business the nice thing is that you don't need any overhead to get started, however the down side is that the name of the game needs to be pleasing clients rather than yourself more often than not.

</comment><comment><USER9> dont do it! service businesses are a hamster wheel. find a flexible day job and invest your wages into products with long-term payback

<comment><USER10> Yeah, providing services can often feel a bit fruitless, mostly because scaling services are a lot harder than scaling a simple product. I'd advise you to at least focus in on a niche/market when providing your services. That way, you'll eventually have domain expertise that you can roll into a scalable product.

</comment></comment><comment><USER11> I have an agency, I can give you some advise

<comment><USER12> How did you get started ? Did you have alredy existing connections ?

</comment></comment><comment><USER13> I am also curious to know about this.

</comment><comment><USER14> here's some tips, based on having a couple of agencies. sounds like you don't have existing leads that you can immediately convert into contracts.

1\. it's a sales job. get leads, and call them. important part of sales: pricing. $1k/page is a good heuristic

2\. it's an account management job. be prepared to spend time being available, and talking to people at your customer

3\. figure out a quick way to get people to a price; develop general ability to get a feel for 1k, 5k, 10k, 20k, and 50k projects

4\. develop a production method that maps to how customers want to see their product develop. screen list -> wireframes -> visual design -> development works pretty well.

good luck!</comment>


What sport(s) should my 6-yr-old son play? - <AUTHOR> http://www.melonakos.com/2010/09/20/sports_for_kids/ <comment><USER2> Does he have a preference? Tennis is pretty athletic, maybe you're just playing inside your comfort zone.

I like martial arts for a lot of reasons, but it's really hard to find a good teacher, there are a lot of BS artists. the more they're into belts and trophies, the less good IMHO. I also think it requires a degree of mental maturity, maybe 6 is too young. I share your indifference to and worries about football, which strikes me as a commercialized tribal mating ceremony.

</comment><comment><USER3> The obvious answer is probably the correct one.

If he wants to play a sport, he should play whichever sport he has fun with and actually wants to play.

</comment><comment><USER4> Hockey to toughen him up and get a great social experience.

I am Canadian BTW</comment>


Oracle 'donates' OpenOffice.org to Apache foundation - <AUTHOR> http://www.zdnet.co.uk/blogs/communication-breakdown-10000030/oracle-donates-openofficeorg-to-apache-foundation-10022593/?tag=mncol;txt

<comment><USER2> As expected Oracle didn't donate it to The Document Foundation. There will be more calls to merge the OpenOffice.org and LibreOffice projects now. That is really what needs to be done, both office suites are still almost identical.

The Apache Software Foundation and The Document Foundation have to overcome their egos and do the right thing. Then we could credit TDF with 'liberating' OOO and ASF with closing the deal.

If they don't merge OOO and LO this 'donation' could create a new division in the Open Source community.

<comment><USER3> > That is really what needs to be done, both office suites are still almost > identical.

Except for licensing. LGPL prevents proprietary forks. IIRC Apache allows them. I wonder why Oracle would want to change the license (or not donate OOo directly to the Document Foundation)

<comment><USER4> grant to Apache Software Foundation usually means a grant of any patents covering the code, so that is a reason to be happy they went Apache.

<comment><USER3> Wouldn't moving to LGPLv3 be a more natural transition?

</comment></comment></comment></comment><comment><USER5> GNOME and LibreOffice developer Michael Meeks' summary:

"Apparently this is a somewhat divisive attempt by an exiting Oracle, along with IBM to sideline the existing developer community, their governance, their aspirations, membership, licensing choice (explicitly adapted to meet IBM's needs incidentally), bylaws, and so on. All of this despite a profound, frequently stated open-ness to including new (particularly large) corporate contributors inside TDF, and taking their advice seriously."

<http://people.gnome.org/~michael/blog/2011-06-01.html>

<comment><USER6> Have you got any more sources for the IBM part? I can't find much.

</comment></comment><comment><USER7> It sounds to me like Oracle realized that they didn't quite grok community driven open-source projects and are finally starting to donate them to good homes (Jenkins to Eclipse and OOo to Apache). All it took was for the projects to go through the hell of major forks before Oracle realized what was going on.

It's probably too late to engender any kind of good will out to this though. They put both of those communities through hell. And neither of these products fall under an Oracle core-competency.

But I wouldn't expect the same result with either Java or MySQL anytime soon. Those are both things that Oracle "gets" and knows how to extract profit from.

<comment><USER8> Honestly, it seems like they're just pragmatically dumping projects they don't want or can't make a profit off of.

<comment><USER9> Better this way than the way most projects go.

</comment></comment></comment><comment><USER10> This is one of those things that I can read as both good news and bad news.

I'm really hopeful that the LibreOffice and OOo communities could now get together and work together and even collapse the code base to one codebase again, but I'm doubtful that will happen. It would be a huge shame to see split efforts continue as it would hurt both projects and, frankly, they are both still lacking FAR behind any of the proprietary competitors.

Not to mention Calligra is rapidly gaining ground on both. If Calligra gets the same level of MS office compatibility, it would leapfrog both OOo and LibreOffice in my mind.

This is going to be a test of the two communities and their ability to see the big picture as well as navigate a political situation. I really am wondering how they will both will fare.

<comment><USER11> MS office compatibility is a good point, but that's everyone's goal, even Apple's Pages isn't much good at it.

From what I understand, someone just needs to make a dedicated browser for Office online.

</comment></comment><comment><USER12> LibreOffice is such a bad name, hopefully if they merge back to OpenOffice and drop the stupid .org from their name. Is it the name of the project or their website? nobody knows!

<comment><USER13> I believe they only used OpenOffice.org because OpenOffice was already trademarked.

<comment><USER14> When they discovered that, it might've been a good time to think up a different name.

</comment></comment></comment><comment><USER15> Why the quotes around "donates"? This doesn't seem like a white elephant, or a trojan horse. It's commendable that they gave it up rather than let it rot.

<comment><USER2> "despite Oracle's talk of 'donation', a lengthy process precedes the ASF's acceptance of candidates"

<comment><USER16> As with all of their projects.

With a project of this size, scope, and adoption, I'd imagine the "acceptance" will be somewhat rubber stamped, and the process will focus on setting up the proper ASF development environment, review of existing code, etc.

I think a lot of people are looking for drama where none exists; ASF is just following the same procedures that EVERY project would be forced to go through.

</comment></comment></comment><comment><USER17> Bradley Kuhn's take on this is that "relicensing part of the codebase out from under LibreOffice may actually be the most insidious attack Oracle and IBM could make on the project"

<http://ebb.org/bkuhn/blog/2011/06/01/open-office.html>

</comment><comment><USER18> Is there a good argument against Oracle releasing ZFS under the GPL (so that it could be integrated into the Linux kernel)?

<comment><USER19> No more reason to buy Solaris licenses?

</comment></comment><comment><USER20> How about donating MySQL too!

<comment><USER21> That would make even bigger news. :-)

</comment></comment><comment><USER22> Apache will likely release OOo under their permissive license allowing the code to be incorporated into proprietary software.

So why do Oracle want to make the OOo code available to Microsoft and IBM for use in their office suites? This may make it harder for OOo to compete with proprietary office software.

<comment><USER23> I think the Apache bureaucracy will kill that branch of the project and development will continue on the LibreOffice branch.

</comment></comment><comment><USER24> After they chased everyone away, now they just to just get rid of it and save themselves the hassle.They might as well donate all their Java patents to Google and save themselves another embarrassment.

<comment><USER3> > They might as well donate all their Java patents to Google

Are you kidding?!

They could donate them to the FSF, ASF or any other non-profit entity dedicated to promote of free and open-source software. Donating them to Google would create a whole lot of temptations the folks in Mountain View really don't need.

<comment><USER25> But they have "Don't be evil" as a motto. How could they possibly be tempted by that?

<comment><USER26> Ok, we get it. Google is "evil". I'd pay $0.05 for every time someone wants to harp on this and DOESNT.

</comment></comment></comment></comment><comment><USER27> And when they mess up with OpenJDK they'll give it to the PHP community ? What about MySQL, which bureaucratic and loosely related community shall it be given in case thinks goes south in your opinion ?</comment>


The Prestige Racket - <AUTHOR> http://www.washingtonmonthly.com/college_guide/feature/the_prestige_racket.php

<comment><USER2> _"Some 40 percent of students pay list price," Trachtenberg says. "These are people from wealthy families; I have no compunction about charging them list price. They can afford it." But the school's financial aid numbers make it clear that the picture is a little more complicated._

It doesn't outright say so, but it seems that Trachtenberg is relying on the canard that students attending on loans are not actually paying full price, which is absurd.

I actually had a college send me an embossed certificate in the mail awarding me a "Faculty of Arts and Sciences Scholarship." It was a low-interest loan. I felt like they were making fun of me. It was humiliating. I really wanted to go to that school, and it was like getting an embossed "Fuck you" in the mail.

<comment><USER3> Isn't a loan at below-market rates equivalent to free money?

<comment><USER2> Oh, yay, I would have got a few percent off the list price that I was 70% away from affording.

They could have given me that money up-front, right? Only that would have been too honest. The fact that they called a loan a "scholarship" is all you need to know about how much respect they had for kids' understanding. They rely on kids not knowing what it's like to pay off loans. Or on kids wanting to cash in on their degree after college, which I had no desire to do.

<comment><USER3> I don't get it. Unless the total cost of college was more than you're planning to make over your entire career (which I doubt) then how are you 70% away from affording it?

<comment><USER2> Being able to pay for something eventually is not a reasonable way to decide what you can afford. Try a mortgage calculator and see how much you can "afford" by that definition. It's insane. Nobody should dedicate half their life to paying off college unless the whole purpose of college for them is to land a high-paying job afterwards. $120k (fifteen years ago) might be a reasonable fee for meeting a bunch of rich people and getting insane management or banking job offers afterwards, but I wasn't interested in that.

<comment><USER3> Fair enough, but it still seems to fall into the category of "more than I'm willing to pay" rather than "more than I can afford".

</comment></comment></comment></comment></comment></comment><comment><USER4> This is interesting:

 _GW students' average SAT scores increased by 200 points_

So, this strategy really did improve the quality of the school, it wasn't merely perception.

<comment><USER5> perhaps more affluent students have more time and money to spend on SAT prep material and classes, and thus have higher averages?

(On the flip side, and to agree with you, I think the strength of a school is really tied to the strength of the students, since it's one's peers that make a great educational experience, IMHO. Any strategy that gets a school to climb the rankings will likely get the school more ambitious applicants.)

<comment><USER6> Or, perhaps more affluent students are smarter, more conscientious and better prepared for academic work on average, and thus have higher average test scores?

I don't know why everyone assumes that children of the affluent get high SAT scores due solely to test prep. If that were the case, you would expect them to underperform once they reach college, which doesn't occur as far as I know.

Incidentally, at least according to one independent study (as opposed to a study by Kaplan), test prep doesn't help much (30 points on the old 1600 point SAT).

<http://online.wsj.com/article/SB124278685697537839.html>

<comment><USER7> Did you just relate native intelligence to parental income level?

<comment><USER6> Intelligence is both heritable and correlated with wealth. So yes, parental intelligence can _cause_ both wealth and child intelligence, leading to a _correlation_ between parental wealth and child intelligence.

<comment><USER8> Genetic determinism isn't so clear, unfortunately. Humans having two legs is highly genetically determined, but that doesn't mean that variance in the number of legs is explained by genes; it's more likely to be environmental factors, like injuries.

Another factor is reversion to the mean. Two bright people are likely to have children dumber than them.

<comment><USER9> He said correlation, not determinism. It's quite possible for wealthy parents to have smart children _on average_ and yet for any given child of smart parents to be spectacularly dumb. (I know a couple myself, FWIW.)

Something with two legs is far more likely to be human than insect, for example, even if you do have the odd human with only one leg.

</comment></comment></comment></comment></comment></comment></comment><comment><USER10> Prediction on Higher Education (a couple of years from now):

Students no longer drive to class early in the morning. Nor do students have to work around class schedules. Instead, students view prerecorded lectures from their laptops/I-Phones. Gone are the days of live teachers and live students.

These video lectures were recorded many years ago. The university pays the original "recorded" professor a small royalty for each class. This royalty fee costs a fraction of a live lecture. This allows the university to pay for a top notch professor to lecture/record one semester, then reuse that recorded lecture in subsequent semesters. One-time cost.

Student questions are posted to message boards which a professor actively monitors and responds to. Students never ask the same question twice since all previous questions are searchable online. Professor responsiveness is very quick (usually in 1-2 hours). The professor answering questions is a full time professor (which may not be the same person as the original recorded professor). This full-time professor is able to handle four times as many classes due to automation etc.

The need for college dorms is marginalized since they are no longer necessary. Because of this, dormitories with excess capacity are demolished since their operating costs are fixed and become a resource drain if not filled to capacity. OR, students get single rooms all to themselves!

Tuition prices plummet due to a surplus of pre-recorded lectures on the market. New industries develop that specialize in creating top-notch video lectures for colleges and handling student questions on message boards (24/7 rapid response student support). Local colleges contract with these new companies (again at significantly lower costs).

International students also benefit (lower tuition/more accessible classes etc). The reach of the US education system now permeates every continent. This has other benefits to their local economies with a higher skilled workforce. Traveling to the US for one semester may be required (for lab classes which require a live teacher).

Tuition for all students is now affordable (and continues to drop as time goes on). Student loans are minuscule.

In the end, higher education is commoditized. Prices plummet, quality increases.</comment>


Carphone Warehouse in customer data breach - k-mcgrady http://www.bbc.co.uk/news/uk-33835185

<comment><AUTHOR> Money quote: "We take the security of customer data extremely seriously"

<comment><USER2> ....going forth and only because the ICO fined their arses.

</comment></comment><comment><USER3> Great. And the only real multi-network highstreet competition, Phones4U, went under (relatively) recently.

That's my parents and my remaining grandparent's details breached then. Fan- fucking-tastic.

<comment><USER2> Just buy your handset from amazon and use a SIM only deal. Don't have to go out then :)

<comment><USER3> Handset cost is subsidized for some PAYG upgrades in CPW. Lumia 435 (unlocked) for £15 as an example. At the time, they were significantly more expensive on Amazon.

The Lumia 435 is not a fantastic handset for techies, it's unsuitable for myself as anything other than an emergency backup or satnav. Largely because the far fewer apps it does have, are not as good as the Android or iOS equivalents.

It's a hell of a bargain for £15 though. It's frankly still reasonable at £35.

However for my mum, it's a perfect "my first smartphone". Not least because the hideous safety orange colour scheme makes it harder to lose.

I purchased my own handset from P4U, SIM free, and it's on a PAYG network. It was cheaper than buying it on Amazon, and I could pick it up instantly.

Amazon deliveries are really hit and miss here at the moment. Months of free Prime because they've repeatedly fucked up time-sensitive deliveries.

<comment><USER2> I use a Lumia 640. Paid £105 for it on a deal day. Never had a problem with apps; most of what I do is built in. Only use HERE drive and adobe reader. That and giffgaff £15/month gives me 4Gb of 4G tethering, 1000 mins and free texts.

Amazon only fucked up one delivery for me in the last 10 years. They left a 512Gb SSD on my doorstep and it got nicked. They sent out a new one instantly.

TBH you can nail a Moto G for not much now. My wife uses one. I can't stand the lag on android though after using WP. And iOS just isn't very flexible. I mean I can't download an mp3 from something without buggering around with itunes.

<comment><USER3> I've got a first gen non-4G Moto G, and it's served me well (on Giffgaff). I have hammered the poor thing though.

It's suffered more abuse than any piece of hardware reasonably should, and it's starting to show it. Battery needs replacing, and I think the front speaker assembly does too. But I've more than had my money's worth.

I couldn't go to WinPho because of apps: No Tasker, no Firefox+uBlock, no FolderSync, no working Netflix. (Might take three reboots before it'll play a video on the 435. Even then there'll be a green line down the screen. Netflix know, it's an MS bug, MS don't care. Months later, still no patch.) Dropbox won't background sync. No Chromecast.

And I couldn't go back to an iPhone. You're right, the "my way or the highway" of Apple just doesn't work for me.

I vastly prefer CoPilot to HERE. Although when my dad needed a satnav, I just got him to buy a Lumia 435 instead. He loved it.

Your £15 4GB 4G bag doesn't start until next month though, does it? But yeah, the effectively free upgrade to 4G data is another reason for me to say goodnight to my faithful Moto. I'll probably be getting a Vodafone Smart Ultra 6 and unlocking it soon.</comment></comment></comment></comment></comment>


Canadian Conservatives commit to Internet surveillance. - <AUTHOR> http://www.michaelgeist.ca/content/view/5733/125/ <comment><USER2> _The first prong mandates the disclosure of Internet provider customer information without court oversight. Under current privacy laws, providers may voluntarily disclose customer information but are not required to do so. The new system would require the disclosure of customer name, address, phone number, email address, Internet protocol address, and a series of device identification numbers._

Wow. The key phrase "without court oversight" is indicative of, at every conceivable level, a massive, gaping hole for trucks of corruption to be driven through. Ridiculous abuses.

 _The second prong requires Internet providers to dramatically re-work their networks to allow for real-time surveillance. The bill sets out detailed capability requirements that will eventually apply to all Canadian Internet providers. These include the power to intercept communications, to isolate the communications to a particular individual, and to engage in multiple simultaneous interceptions. Moreover, the bill establishes a comprehensive regulatory structure for Internet providers that would mandate their assistance with testing their surveillance capabilities and disclosing the names of all employees who may be involved in interceptions (and who may then be subject to RCMP background checks)._

Double wow. It seems unnecessarily close to turning each Canadian ISP into another branch of the Canadian government's surveillance agencies. These politicians want to _force_ providers into restructuring their networks and systems so that they can be used as a tool for the Government's every covert whim... AND subject the employees of these providers to background checks so that they can be trusted with this unnecessary, malevolent work shoved in their laps?

Insane.

<comment><USER3> _It seems unnecessarily close to turning each Canadian ISP into another branch of the Canadian government's surveillance agencies._

Only if you consider Bell Canada to be a branch of CSIS. None of the requirements being proposed for ISPs go beyond what is already required for telephone networks -- and unlike phone conversations, it's easy to encrypt your internet communications.

<comment><USER2> Honest question: does the RCMP require background checks for employees of civilian telephony providers?

<comment><USER3> Employees of phone companies generally? No, of course not.

Employees who have access to the wire-tap systems? I'm sure they do.

<comment><USER4> Can you back that up with anything other than your personal certainty.

<comment><USER3> I have reasons to believe this, but none I can present here.

</comment></comment></comment></comment></comment></comment><comment><AUTHOR> Canadians really need to be aware of what this election could mean for the internet. OpenMedia.ca is running a campaign of "Vote for Internet" which is interesting, but I don't think they are approaching it in a way that will have any real weight.

Canadians need to make sure that the internet is an election issue, and not just ridiculous stuff like this, we also have to worry about C32 (the copyright bill), internet billing, etc.

<comment><USER5> This part summarizes one thing I particularly noted. From Geist's description, the Conservatives appear to be trying to force this through with little or no debate -- and, presumably, if they can pull it off an equal lack of press:

 _There are several concerns with the Conservatives lawful access plans. First, it bears noting that these bills have never received extensive debate on the floor of the House of Commons and never been the subject of committee hearings. Police officers may support the legislation, but there has never been an opportunity to question them on the need for such legislation or on their ability to use lawful access powers if the bills become law. Federal and provincial privacy commissioners have expressed deep concerns about these bills, yet they have never had the opportunity to air those concerns before committee. Internet service providers, who face millions in additional costs - presumably passed along to consumers - have never appeared before committee. By making a commitment to passing lawful access within 100 days, the Conservatives are undertaking to pass legislation with enormous implications for the Internet that has never received parliamentary scrutiny and will receive limited attention._

<comment><USER6> > the Conservatives appear to be trying to force this through with little or > no debate

That's why they want a majority of seats in the House of Commons: it gives them a de facto dictatorship for four years.

<comment><USER7> From what I hear, the domination of the Bloc Quebecois in Quebec makes that a pretty hard target to reach.

</comment></comment></comment></comment><comment><USER8> What would go wrong in society if the internet and phone system were totally un-tappable by government and people could easily communicate in complete secrecy?

Every government seems to want to intercept communications against the people's wishes. What do they understand that I don't?

<comment><USER9> Proposals like this can win votes from law-enforcement circles. After all, warrantless disclosures and always-ready surveillance equipment would allow cops to gain information about a person with just one phone call. They hate having to follow procedure, especially if that procedure involves waiting for a judge to issue an order.

There's also the more dramatic explanation about how this all boils down to a power struggle between the haves and the have-nots, but I prefer the making- cops-happier explanation. There are plenty of good cops in every country, but law enforcement has a lot of solidarity built into its ranks, so police- related groups can sway many votes. Harper would do anything for a few thousand extra votes.

<comment><USER10> It's also an issue of costs. If the government can hold up device/protocol X and say your equipment must interact with X, then it makes legal surveillance cheaper.

</comment></comment></comment><comment><USER11> I don't really understand why so many politicians are writing laws that make invasions of privacy possible "without a warrant". Why don't they just require a warrant? Then there are checks and balances, and everyone's happy.

<comment><USER9> Warrants are issued by judges. There are few things that a politician hates more than having to answer to a judge.

All of the Internet surveillance and censorship policies proposed and implemented around the world attempt to bypass judges. USA (Patriot Act), Australia (mandatory filtering), and now Canada. The usual excuse, of course, is that things on the the Internet move too quickly to wait for due process to take its course.

<comment><USER11> Aren't judges politicians?

<comment><USER12> In Canada judges aren't elected so technically I wouldn't call them politicians.

</comment></comment></comment></comment><comment><USER13> Get out there and vote, people. The Conservatives have been far too dangerous with a minority, a majority would be even worse.

</comment><comment><USER14> And one aspect that no one is touching on is unsecured wireless hotspots. What is the implications of this for Safeway, or any other company that runs a customer friendly wifi access network?

Say goodbye to those conviences as well. ISP's will need waivers for customers running unsecured networks, not to mention potential liability when your supplying wireless devices to your customers.

Like gun control the only people this will punish is law abiding citizens.

</comment><comment><USER15> I don't have time to work on this, but am willing to do my bit as a citizen. What, besides emailing candidates, would help?

<comment><AUTHOR> I wish I knew. The liberals aren't a whole lot better at this point, having had their fingers in a similar pie some years back.

I guess at this point, try and oust the Conservatives and hope for the best.</comment></comment>


Ask HN: Digital Amnesia? - <AUTHOR> Do you sometimes like 80% of everything you see online just disappears? <comment><USER2> Yeah, I've learned to keep a digital scrapbook if stuff I like.

Then again some stuff disappears and comes back again - in example is vintage computer information, back in the 90s/2000s there were some great archives in like funet.fi and uwaterloo.ca. Those are long gone (usually the admins graduated/retired) but the data has since re-appeared in other private and public archives, including much more information than the previous ever had.

Also many links die because the technology improves, on my site I have revamped it probably three times over the last 20ish years, I still get page requests for some of the early links that no longer exist. The data is still there but at a new url.</comment>


Microsoft's PowerShell Core Offers Cross-Platform Automation - <AUTHOR> https://thenewstack.io/cross-platform-open-source-powershell-goes-net-core-runs/ <comment><USER2> Conceptually, Powershell is really cool.

But in practice, I find it both cumbersome and very, very slow.

For example:

       marcel@vger[Downloads]time pwsh -c 'ls' >/dev/null

       real	0m0.824s
       user	0m0.636s
       sys	0m0.213s
       marcel@vger[Downloads]time sh -c 'ls' >/dev/null

       real	0m0.011s
       user	0m0.003s
       sys	0m0.005s
       marcel@vger[Downloads]

That's around a factor 80. Hmm. OK, startup costs, JITs hard time, yadda yadda.

But it's not just that. For example I found a simple

        dir -r

to be more around 50x slower than the equivalent

         ls -lR

And so on.

<comment><USER3> On top of this, writing PowerShell feels like _programming_ rather than _scripting_. I know that's sort of ambiguous, but PowerShell is astonishingly verbose compared to bash, or sed/awk, or Perl. PowerShell may be a better programming language than bash, but the times I wrote some, it took me a lot longer (maybe mostly because of my own familiarity with bash) and the resulting scripts were bigger (which I think is unavoidable).

I just don't find PowerShell fills a niche I need to fill, even though it seems to be really powerful and designed by smart people. I guess if I worked on Windows it would fill a niche since it has hooks into the system that are harder to reach in other non-MS languages.

<comment><USER4> My biggest complaint with PowerShell is that it's unnecessarily inscrutable -- filled with Bash-like and Perl-like syntax and semantics without the legacy to justify it. I wish writing in PowerShell was as easy as writing C# but instead it's almost as bad as writing Bash scripts.

It's not good for programming or scripting. There are so many good ideas in PowerShell but it's wrapped in a weird body.

<comment><USER5> As a Syasdmin, Powershell is a scripting dream: it has tab completion for the commands _and_ the switches. I don't feel like I have to guess or look at man pages to figure out why there's a -s and an -S. The help pages are usually written for human consumption by comparison. Saying that it is 'unnecessarily inscrutable' is quite hilarious - have you seen some Linux commands & the lack of output they give? Powershell, if anything, ins extremely verbose & is clear in when something goes wrong.

At least, it doesn't insult you like Ansible tooling with the ^ YOU MADE A MISTAKE HERE BUT WE CAN'T BE CLEAR WHAT IT IS

<comment><USER6> We have all of that in C# without the rediculously bad syntax.

It's such a shame powershell didn't come 2 years later, I feel like they'd have had no choice but to use C# instead of inventing a new language.

<comment><USER7> We thought about that but the reality is that it does not work well for interactive experiences.

When you look at how admins get their job done, it starts in the interactive shell and then when the do things frequently, they put it into a simple script and when then need it to be more formal, they invest in making it production quality.

That is the flow that PowerShell was designed to support.

Jeffrey Snover [MSFT]

<comment><USER8> Could you just allow interaction with objects in a shell while just using c#? There are interactive c# interpreters that already do great.

</comment></comment></comment></comment></comment></comment></comment><comment><USER9> PowerShell is kind of bizarre. I totally get why is has taken off with Windows sysadmins, compared to the previous built-in alternatives it is _amazing_.

I think a lot of the bizarreness comes from trying to be multiple things, an interactive shell and systems automation language. It is case-insensitive, with seemingly no consensus on what case to use for things. Kinda makes sense for a shell environment with a case-insensitive file system, but very odd when writing automation. It can be written to look like any modern C-like language; set variables, pass variables to functions, etc. But idiomatic PowerShell seems to be (at least in some circles) piping one function to the next in _very_ long chains. Again, that makes sense in a shell, but becomes somewhat unreadable in an application.

Most of what I've seen PowerShell used for is automation, from small 1000 line scripts to seriously large applications with libraries and databases. And I can't help but think that Python would have been so much nicer, if only it was built-in to Windows. Python has libraries for working with the Win32 API and COM objects, there is even IronPython which runs on the CRL and can integrate with .NET.

I don't think anyone was asking for an interactive shell and a serious programming language to be combined, and it would have been nice if they were separate. Instead they have an awful terminal console, an oddly verbose shell language, and a slow case-insensitive programming language.

<comment><USER10> > "It is case-insensitive, with seemingly no consensus on what case to use for > things."

There are naming conventions in PowerShell, but you don't need to know about them when you start out. For example, it's common practice to use camel case for variable names, such as $myVariableName.

> "But idiomatic PowerShell seems to be (at least in some circles) piping one > function to the next in very long chains."

For the code I've seen and written, it's rare to see pipes longer than 4 commands long. If you get any longer than that, it's easy to store the output object in a variable and continue to work with this variable as a shorthand.

<comment><USER9> Regarding case-insensitivity, I'm not referring to user picked names, I'm referring to the whole language.

Is it ForEach, Foreach, foreach, or ForEach-Object? Official documentation[1][2][3][4][5] has all four variations. Same for True/False, While, Write-Output, etc. Everything is case-insensitive and the docs can't decide which to use. Again, it kind of makes sense for a shell language when your users are used to case-insensitivity, but I much prefer stricter consistency in programming languages.

[1] [https://docs.microsoft.com/en- us/powershell/module/microsoft...](https://docs.microsoft.com/en- us/powershell/module/microsoft.powershell.core/about/about_foreach?view=powershell-5.1)

[2] [https://docs.microsoft.com/en- us/powershell/module/psworkflo...](https://docs.microsoft.com/en- us/powershell/module/psworkflow/about/about_foreach- parallel?view=powershell-5.1)

[3] [https://docs.microsoft.com/en-us/previous- versions/windows/i...](https://docs.microsoft.com/en-us/previous- versions/windows/it-pro/windows-powershell-1.0/ee176828\(v=technet.10\))

[4] [https://technet.microsoft.com/en- us/library/hh551144.aspx](https://technet.microsoft.com/en- us/library/hh551144.aspx)

[5] [https://docs.microsoft.com/en- us/powershell/module/microsoft...](https://docs.microsoft.com/en- us/powershell/module/microsoft.powershell.core/foreach- object?view=powershell-5.1)

<comment><USER10> ForEach is an unusual statement. Depending on the context in which it's used, sometimes it's an alias of ForEach-Object, but sometimes it is not. The following article has more details on this, but one thing that I'd like to highlight now is that one way that ForEach and ForEach-Object can differ from each other is in memory use, as ForEach will load all objects that it's iterating over into memory first before starting the loop, whereas ForEach- Object will not. As suggested before, more details can be found here:

[https://blogs.technet.microsoft.com/heyscriptingguy/2014/07/...](https://blogs.technet.microsoft.com/heyscriptingguy/2014/07/08/getting- to-know-foreach-and-foreach-object/)

Going back to the naming conventions, the conventional way to write ForEach is in PascalCase. The variations slip into code as it's also an alias, and aliases tend to be in all lower case, and also because naming convention guidelines are just suggestions, not something that is strongly enforced (Foreach does seem to be commonly used, even if it's not necessarily in the standard styles).

Generally speaking, PowerShell coding style is similar to .NET coding style. You can read a discussion about it here:

[https://github.com/PoshCode/PowerShellPracticeAndStyle/issue...](https://github.com/PoshCode/PowerShellPracticeAndStyle/issues/36)

By the way, I respect your right to use whatever language you like best, I'm just clarifying that whilst PowerShell may not have it's "PEP-8" or gofmt, there are still conventions that PowerShell coders follow.

</comment></comment></comment></comment><comment><USER11> If PowerShell is bad because its too much like a programming language thats fine with me. I like being able to hop onto any windows computer and make things happen. I can scrape websites, consume web apis, host webservers, and more all in beautiful one liners. Also text to speech and wscriptshell are fun for messing with your friends computers.

</comment><comment><USER12> Oh goodie, a PowerShell thread on HN. I'm excited to see how many variations of "I hate PowerShell because I've never bothered to spend time learning how to use it, so I don't, and it's also not X, which I use and like" will show up.

</comment><comment><USER13> So long as Microsoft continues to operate its Linux patent racket I won't be letting PowerShell or .Net Core anywhere near my Linux boxen. People, wake-up. It is NOT OK to let Microsoft become another Linux player without holding it to account for its current and past anti-open source practices.

</comment><comment><USER14> From the bottom of the article: _Microsoft is a sponsor of The New Stack._

Please don't link to articles from The New Stack. Their articles are often nothing more than warmed over press releases...

</comment><comment><USER15> Personal opinion: I tend to find that the times when I end up using advanced Powershell features, I should have been writing code; and times when I don't I could easily have used a batch file.

It's too bad that the focus wasn't put on creating an amazing .net interpreter for the commandline.

</comment><comment><USER16> If only it had `&&`

<comment><USER17> 100x yes. The amount of times per day I do something along the lines of

git add --all && git commend

(commend being an alias for "commit --amend --no-edit")

or

npm install && npm prune && npm run watch

This is the main reason I use git-bash as my primary terminal whenever I'm working on Windows.

<comment><USER18> Semicolon works, though doesn't have the quit/shortcutting on exit code semantics.

There are some community tools to fake it a little better (Get-ExitBoolean).

Also, a big GitHub issue tracking it: [https://github.com/PowerShell/PowerShell/issues/3241](https://github.com/PowerShell/PowerShell/issues/3241)

<comment><USER19> > _Semicolon works, though doesn 't have the quit/shortcutting on exit code > semantics._

I would say it's a little more than semantics. Consider

        cd /some/dir/with/a/typo && some_destructive_cmd .

vs the semi-colon equivalent.

<comment><USER18> No, absolutely, there are many cases where semicolon is a bad replacement and a more suitable arrangement found. I'm just speaking to a lot of the "quick one line scripts" that aren't dangerous, such at the parent suggested. Things like `npm install && npm prune` are fine as `npm install; npm prune`. It may "waste" cycles in the rare case of a failed install, but it isn't dangerous.

I agree though, a good short-circuiting Boolean operator would be nice.

</comment></comment></comment></comment></comment><comment><USER20> PowerShell is fundamentally flawed system. The object oriented language does not belong to shell. It's simply too verbose and awkward for repeated fast interactive use. When tons of commands starts with get-*, that's 4 extra keystrokes before even you begin to specify actual command. I know there are shortcuts but still that's workaround this bad foundation.

A general purpose programming language where you write statement and it stays there and gets executed million times is very different model than shell language where you write statement, throw it away and move on with next. Combining both is creating Frankenstein that's good at neither. It's just quite funny that PowerShell syntax doesn't allow == but does need curlies. Who in the world would have thought of that?

Also the view that everything in shell should output structured data is plain wrong. Shell should output human readable formats. always. It's tool's job to do proper parsing and deal with related complexity. The convenience should always be afforded to humans, not tools. Even if one changes all built-in commands to comply this, vast majority of programs won't.

So lot of above leads to Frankenstein-ish design that looks like awkward hodge pudge of bandaids. While cross platform is good, MSFT needs to start brand new effort, leave PowerShell behind and take command line to next generation with right first principles.

</comment><comment><USER21> I've migrated some of bash scripts I use, so the same script can be used for Windows and Linux.

Bash ports on Windows can be messy especially if it involves non-Latin codepages, especially when it involves language like Japanese, which frontend is still not migrated fully into UTF-8. (Also WSL handles it more gracefully.)

I am program in C# a lot, so extensibility via CmdLet is also interesting. (Although, I haven't explored this much, yet...)

<comment><USER22> You should : even if I consider Powershell pretty alien as a language (coming from an old time Windows dev), Cmdlet is vastly superior to other various argument parsing tooling (optparse, argparse, argv, etc.) I've used in the past.

<comment><USER10> > "Cmdlet is vastly superior to other various argument parsing tooling > (optparse, argparse, argv, etc.) I've used in the past."

I can't comment on the other options you listed, but I would agree that PowerShell has good features for parsing arguments (if you use advanced cmdlets, which only require one extra line to enable on basic cmdlet code, for [CmdletBinding()] ). Aside from built-in attributes for enabling common argument checks (like checking for nulls), you can completely customise parameter validation using ValidateScript, which allows you to set up a script that must evaluate as true in order for an argument to be valid. I'd be interested to find out if any Unix command line scripting language offers something similar.

</comment></comment></comment><comment><USER23> As someone thats never been very good at programming in full languages I find that PowerShell is very easy to learn and quite intuitive once you know the basics. I have used it for a huge amount of things that are quite varied. I dont think I've ever had a thought of something I wanted to accomplish and wasnt able to do it (eventually in PowerShell)

</comment><comment><USER24> For those who don't like PowerShell's syntax and choices, I highly recommend looking at [http://xon.sh/tutorial.html](http://xon.sh/tutorial.html) \- it's a marriage of Python and a shell done right, and it's cross platform.

</comment><comment><USER25> Criminy, the Mac tarball expands to over a hundred megabytes, with at least two hundred DLLs and dylibs. If I already have .NET Core installed, is running dotnet pwsh.dll basically the same as running pwsh?

</comment><comment><USER26> You know what also offers cross-platform automation and has packages available on all named operating systems?

Bash.

<comment><USER27> > cross-platform automation

> bash

Nope. Show me the script that gets a list of mounted filesytems for locally attached disks and flags any that are larger than 20G and are more than 90% full.

Since it is cross platform it will run the same on linux/bsd/os x and windows, right?

<comment><USER28> I haven't used the Windows Subsystem for Linux much, but shouldn't it be possible to have a bash script that runs on all of them? (though it might take some testing against the environment, for things like osx's /Volumes etc.)

<comment><USER29> I use WSL daily, and yes you can see your entire C:\ drive in WSL under /mnt/c/, and all the common directory commands work, so running a bash script is 'cross-platform' in that way.

That's sort of cheating though. In that instance, Bash isn't really being cross platform, so much as Windows bent over backwards to re-implement lots of Linux underneath Bash, so Bash could treat Linux and Linux (on Windows) identically.

Or to restate that: If Linux apps get to claim they are 'cross-platform' because of WSL, then Windows apps get to claim they are 'cross-platform' because you could run them in WINE.

</comment></comment></comment></comment><comment> cup-of-tea I'm a bash guy. I'd heard of Powershell and thought it was interesting that Windows finally had something like bash. But back then I didn't use Windows. More recently I had the need to do some scripting for Windows so naturally I looked at Powershell and was excited thinking it would "just like home". It was awful. More like writing Java code than scripting. Except weirdly heterogeneous and ad hoc. I also had to use weird hacks to stop it corrupting every text file with BOM crap.

I can't help but thinking the praise Powershell got is just because Windows people have suddenly realised there's more to life than point and click. Well no shit, guys. This is why we've been using Linux this whole time.</comment>


Microscopic computers: The wires of the future may be made of molecules - <AUTHOR> https://phys.org/news/2020-06-microscopic-wires-future-molecules.html <comment><USER2> Current wires aren't made of molecules? Sounds like a Monster Cable marketing plan.</comment>