I had the same question as we do mostly PHP; I'm guessing it just uses Ruby as the host software.
I installed the Gem and was able to acquire a URL but kept getting an error:
An error has occurred: {"stack":"Error: socket hang up\n at Socket.<anonymous> (http.js:1271:45)\n at Socket.emit (events.js:64:17)\n at Array.0 (net.js:825:12)\n at EventEmitter._tickCallback (node.js:126:26)","message":"socket hang up"}
You need to have some server listening on your local machine at whatever port you are creating the tunnel for.
If you just wanted to test it out you could start something like "python -m SimpleHTTPServer" and then "show 8000", which will serve files from your local machine at your showoff url (I might recommend running the server in an empty directory).
you have to leave the 'show' program running or you get that error - leave your terminal window open, don't control-c out of it once you've started it, and it will work fine. I had the same issue :)
I was going to say that the day pass pricing is right on but if it was me, I'd want to do price testing on the monthly pass because it seems to inexpensive.
I'd also consider a "Enterprise plan" which is monthly plan with possibly some restrictions based on IP or with password protection etc.
We wrote the showoff client in Ruby. It's a light wrapper around SSH that helps manage accounts, SSH keys, &c.
Since Showoff is basically a fancy SSH tunnel, it should work with any kind of webserver. If there's enough interest, we'll probably bundle up client software in ways that don't depend on `gem install`.
Why would i use this over a VPS? A VPS is a similar price and has similar functionality, but doesn't pose a security risk to my home workstation and comes with a slew of other benefits.
The tech looks reasonably cool, but what is the use case?
EDIT: Your site also makes it sound like it is HTTP(S) only. If it's not, you might want to clarify that.
We often develop sites on our laptops. The more complicated sites are, the more there is to sync around (databases, dependencies to install, version control commits, &c). Showoff is a quick way for us to get feedback from clients or each other without adding overhead to our development process.
Funny, I thought you mentioned the VPS because you could still reverse tunnel and share the app in your laptop without deploying. I was going to say that it's still a good idea since the day pass is just $1.
The main page seems focused on simplicity and short sentences. I think they thought that $0.99 would have looked too noisy compared to $1.
It's possible that they are also pandering to people like me who dislike prices written in that way. I am annoyed by the chore of mentally adding one to every price ending in 99 cents, and I respect sellers who write prices like that less.
No, you can reverse tunnel through a VPS and get the same effect, but you're paying 2-5x as much for virtually the same thing (unless you already have a VPS).
I work remotely 100% of the time (and not always in the same location). The use case for me is to quickly show a feature to coworkers without having to commit/push to a remote server. Especially if the feature needs immediate feedback and is not completely baked/finished.
Can you explain how? I am a newbie to web development. I have been making sites locally on my machine and using heroku to deploy online. I am thinking of getting VPS hosting.
Thanks for bringing HTTPS up, that's another good use-case for Showoff. If you're developing a web app that needs to be tested with HTTPS and don't want to mess with creating a self-signed cert, Showoff can help you out.
It's also really nice for testing web hooks or API callback URLs against a local web server (e.g. ecommerce sites with IPN, &c). If you sign up for an unlimited account, you can choose a permanent URL to use for your tunnel (e.g. "my-name.showoff.io").
Working independently on a project or projects with distinct clients who either need or want to give input/feedback on feature development can be greatly alleviated: work up a quick prototype, show off from my local dev machine (never have to touch a server), call/IM my-name.showoff.io, and they get to see it right away, in the same medium they will eventually be using it. This is so much nicer than sending a wireframe or design of a feature.
The long-term benefit is that the my-name.showoff.io URL can be pretty easy to recall & reuse for any number of clients & features.
We wanted to make it super clear that the primary use case is local development. By saying laptop it removed any ambiguity that it might be a production deployment tool.
Ah, gotcha. So the product that is being sold is simplicity. Are you the creator? If so, I would suggest:
- more contrast between text and background
- explain who the intended user is (web dev w/o strong LAMP background. I would find it easier to turn all that stuff on than to try to use a new product, and it's not worth even $1 to me to do that... so I'm clearly not your target customer)
- explain what your value prop is (it's not "Now You Can Share!", it's, "Now You Can Share With One Click"). The way it's explained, it feels like a new capability...
Well, to be fair, and this is personal opinion, Showoff has little to do with whether or not a developer has a strong LAMP background (or .NET, or Haskell, or insert-your-favorite-stack here). And yet it has everything to do with whether or not a developer has a strong LAMP/whatever background. Showoff is not intended to replace your stack--at all. In fact, this product came from a strong server-side background. If you find it easier to set up Apache & MySQL & DNS records and all that to show a client/person a development site/feature you are working on locally (that has not yet been moved to a server), that's fine. Slightly masochistic, but still fine.
It's just that's more than most of us, as well as most of the devs we know, want to have to do to share local projects-still-in-development with our teams and clients.
Example use cases:
CASE ONE. You are working on a new site or feature for a Django/Ruby/.NET site on your local box. You've been banging away at it for the last couple hours, and are trying to explain it to your client, coworker, boss, or friend. You have it running locally just fine, are playing with it at http://localhost:1234/ and it looks pretty good. Everything's in good shape to show off your great new thing. If only they could both see it & interact with it, they'd be able to try it out and let you know what they think. How are you going to do this?
-Option 1: Leverage your strong LAMP/whatever background & ssh to your development server, get all your proj files up-to-date, migrate/upgrade a db schema, restart your instance, test everything out to make sure there were no unforeseen impacts from the change before you let anyone else see it (you don't want them to hit the page & get a 500 (you do test before you let anyone try a new feature, right?)), then paste the URL to your client, coworker, boss, or friend.
-Option 2: switch to a shell & execute `show 8000`, then paste the URL to your client, coworker, boss, or friend.
CASE TWO. You are updating a site that's been around for a long time and is already live on the web. Some important changes and new features have been requested & you've been banging 'em out for a couple hours (or days). You need to get them before your client, coworkers, boss, or friend before they are live on the site. You currently have everything running locally at http://localhost:1234/ and it looks good to you. Maybe you have a few questions about whether you're on the right tracks. What'd be really nice is if you could put up what you have, let your client, coworkers, boss, or friend check it out, and maybe go thru a few page refreshes rapidly to see some other options (especially helpful with CSS changes/fixes).
-Option 1: Leverage your strong LAMP/whatever background & ssh to your development server, get all your proj files up-to-date (including making sure the dev site is exactly identical to the live site and then apply your changes), migrate/upgrade a db, restart your instance, test everything out to make sure there were no unforeseen impacts from the change before you let anyone else see it (you don't want them to hit the page & get a 500 (you do test before you let anyone try a new feature, right?)), then paste the URL to your client, coworker, boss, or friend. Time to try the next change? Repeat all over again.
-Option 2: switch to a shell; execute `show 8000`; paste the URL to your client, coworker, boss, or friend. Time to try the next change? Usually just a quick local Save action away & asking them to refresh.
If anything, you might even argue that the people who have a strong LAMP/whatever background are exactly the target customer for Showoff -- they're the only ones who can read Option 1 and groan in disgust at doing all that just to try out a pending feature/fix.
The value prop isn't merely "Now You Can Share With One Click" (and not just because there is no clicking involved) ;). It's that and m...
Sure, and I didn't mean to appear like I was stating the service was useless. It obviously has use -- it is a cheap shortcut that will reduce a very obvious pain point. An excellent business idea.
All I was saying is two-part:
1) the marketing copy on the landing page needs some work. the design needs some work as well. The main message was unclear to me
2) this product isn't for everyone. E.g., I do all my dev work on virtual machines. One of my colleagues has a custom deployment script. Many people use continuous deployment.
I guess all I'm suggesting is that the creator move to market themselves to a certain segment of the population. I'm not in that segment, but it was difficult for me to determine that. I suspect it's because the copywriter is loathe to exclude a possible customer. In my opinion, the "grab at everyone" approach hurts more than it helps. Go specific!
And finally, not everyone has Ruby running. I've never installed a gem in my life. Which would I rather do: something that I have done a million times and have partially/fully automated (depl to internet), or try to setup a ruby system?
If you're on osX there's no "setup a ruby system" you type a one line command and then you can use "show". You might have to use the full path to `show` to get it to execute depending on how it installed. You don't need to know anything about ruby -- I've never touched ruby and I was up and running in less then 60 seconds.
Fair enough. Again, I was just trying to analyze their landing page copy from the point of view of a potential customer. I am not a potential customer.
But for people without any Ruby experience, you don't know that fact ahead of time. All you see is the unknown ruby command. And my impression (as a non-user of ruby) is that it's hard to get going. So a potential customer may see these issues as a hurdle to jump.
For me these tools are much more promising than simply showing your work to your boss. It could even become a solution to get around censorship. Imagine you plug a p2p share on it with all the wikileaks docs, and other do the same...
Awesome. I'm definitely a potential paying customer.
Two suggestions and a question:
* How about a free trial for unlimited access or some other kind of cancellation guarantee?
* Minor one, but the dark contrast on your website UI is about equivalent to the background on a typical lightbox...i.e. it reads "disabled" to me on first glance.
One question:
I assume I could map a CNAME record to the showoff URL? (So cookies work, etc.)
Cool good to know. :) Less a matter of the money, more a matter of wanting to easily play around with the "full strength" version to see if it really works for me.
I happen to be working on an account/authentication service right now, so being able to rig it with a working domain name (via CNAME) so cookies work with my app is definitely big on my list.
Why the "Average user asks:" critique when the target audience (as you acknowledge below) is clearly technical. Anybody with networking experience, ie. setting up a web-server (even for local dev) will know what localhost is (they type it in their address bar to access the "local" server)...etc
It looks like something designed for 3D and film production. Such an interface has very little contrast and color so it doesn't interfere with the perceived color and intensity of the image.
It's not obvious by looking at the pagekite homepage what the product does. Lots of focus on the benefits, but as a developer, I'd rather just know what it does and how to use it
I would even suggest taking inspiration from the clearly annotated three-panel diagram on the showoff.io homepage - very clear and simple. I am guessing that pagekite might offer more functionality than this, but again, I am having trouble figuring that out.
I absolutely understand. I'm not a marketing person either, but I have some experience in usability research, and I think you will get as much value from testing the homepage with a few fresh faces as you would from a marketing project. There is an interesting crossover between usability and product marketing when it comes to homepages and messaging.
If you haven't already, I highly recommend Steve Krug's new book "Rocket surgery made easy", which is focused on guerilla usability testing. Usability testing is classically about identifying problems/improvements to a UI, but you can quite easily use the same techniques to test your homepage and figure out whether people understand the product and whether the homepage encourages them to try it out, etc.
Have fun!
Here is some honest critique for you: It's about more than marketing. Where they are blowing you guys away is usability -- partly in the product itself, but more on the website.
In less than 100 words I know: a) exactly what showoff does, and b) exactly how to get it up and running.
I mean, my eyes just glaze over when I see that. Get me running and get out of my way. As someone else in the thread said, don't waste my time selling me "benefits" -- that's what enterprise salespeople do to enterprise buyers.
Also, I like that you have a free trial, but when are you going to tell me how much it costs? And do I really need to complete an optional survey and check a terms of service box?
Sorry if I sound like I'm being hard on you guys, but even though I don't know you at all I'm confident you're capable of more. :) Don't fall back on the "we're not good at marketing" excuse. Spend a lot of time thinking about how you can simplify, simplify, simplify, simplify every single aspect of the interaction on your website and your product itself.
Thanks for the feedback! We are working on all of these things - we've been iterating from 'geeks only' to 'polished product' and just aren't all the way there yet.
Our problem is we have a highly technical, generic tool and we've found it really hard to write docs that are easy to understand and a product description that resonates with people.
It's quite eye-opening to see how someone with a relatively small subset of our features can completely wow everyone by very clearly presenting just one use-case. Simplicity really seems to be key, at least to getting this kind of attention.
As a bit of meta-commentary, I have to say: it's exchanges like the one's between you and jsdalton and you and pakeha that make me love HN. It's pretty rare to see such honest conversation and useful, constructive criticism both given and then accepted in the spirit it was given. Thanks to all of you.
dyndns is just one provider. you could host it yourself. There are dozens of routers and clients that support DDNS protocol, no need to reinvent things.
At first I thought this was Ruby based since it was installed via gem, but at the footer it says it is built using Node.js. This is a fine example of the power of Node.js as well as the versatility.
On a side note, this reminds me that isaacs (creator of npm) has pushed npm to be for development and not for deploying to end users. Hence using gem instead of npm.
I like the idea, and had you not have used Node.js I was going to spend a few hours and create a clone using Node.js since it would be that easy. Mind you not that easy if I were to match your level of service and the site. Hope it has a lot of success.
Node is a network library and you can easily create a TCP server. That s all. On the other hand ruby is great for writing scripts and nice DSLs so the whole concept is implemented very nicely.
Node.js is more than a network library, but you are right it is easy to create a TCP server. I have created many scripts using Node.js and I am not the only one.
Wow that's brilliant. I'm definetley a potential paying customer. That's cheaper than spinning up an Amazon EC2 micro instance to develop on at $5 a month.
I'm not a big fan of dark gray background with darker gray text though.
I've got MAMP Pro running on my notebook and have a half-dozen "local" urls ( only valid URLS for me ) - is there a way to point this service at those URLS in addition to localhost?
When I see new projects and ideas that take off, my response is usually a curmudgeonly observation about how stupid and pointless it is or how it's so obvious and trivial that I can't believe anyone would waste their time making it.
This is not one of those. This is one of those cases where I'm not a bit jealous because something so obvious or inane or dumb took off and became Twitter, but because it's just so damn fantastic. This is one of those things that is so elegant and smart that it makes me feel like a complete idiot.
well, it's trivial after reading ssh's man page. though the execution is nice and everything is packaged that relatively tech un-savvy users can make use of it.
Oh but I detect that you care. Well, the difference between this and an obscure open source project buried on git hub is for a starter to at least have a web-site at localtunnel.com!
I care about my work and it being used and contributed to if people are interested in it. I don't care about money, which is why it's open source and run as a free service. My code is MIT and I would love it if people took my code and made a pay-for service like this with it... but instead, they (to be fair, probably unknowingly) duplicate effort and obscure my work.
If a fancy website is all I need, I guess that's what I'll be doing this weekend. And I guess SSL and CNAME support...
I don't think there was ever an intention to obscure work, maliciously or otherwise. This project started because developers started developing, not googling or searching github.
To be fair, the "fancy website" is a byproduct of designers who like to make stuff look good, and the rest of Showoff's team caring very much about not just making stuff that works (of which they make a lot, much of which is hidden away in obscurity), but about making it easy for people to use who wouldn't perhaps take on the task themselves—and I don't think there is anything at all wrong with that.
However, I don't think it is fair to imply creating this tool (and its website) was a product of caring about money, or duplicating and obscuring your (or anyone else's) efforts. It is like many other ideas out there that came from a real need, hacking it together, and then asking if people might find it useful enough to pay for it. That's not a reason to disparage or diminish a job well done.
In the end, it looks like Showoff's also brought attention to your project, pagekite, and plenty of other ways people have shared to do the same thing. Today was the first time I'd heard of localtunnel, but I've done this same bit of showing off localhost before for clients and coworkers on my own--and it's a bit like splitting hairs to call it duplication. Hackers hack. It's what we do. I definitely like open sourcing when it makes sense. But I also like to eat and have a roof over my head. Open source does not hold a monopoly on good intentions.
You're both right. However, if I didn't complain as much, my project probably wouldn't have doubled in GitHub watches. ;)
It's great to have the idea validated, especially since mine and showoff.io's user experience are nearly identical. And this will force me to make a pretty homepage and add features.
So now that I've complained, I don't think I can complain much more.
I guess I can't blame you for philosophical differences. Personally, I do a lot of research before investing my time in building something. Not only do I try to avoid NIH, but I prefer investing my time in clever and useful things not done before -- I tend to think I'm good at producing novel things. I suppose others doing something similar a year later and getting more attention comes with the territory.
Now... open source vs commercial, that's a whole different discussion (although probably not what you'd expect).
NIH is a willful decision to create something that already exists and is fully known to all interested parties, but summarily rejected on the basis that it is ... wait for it ... Not Invented Here. Sometimes, an identical result issues from identical circumstances wholly independently and honestly--leaving the world with nearly identical objects that attempt to solve an identical problem in an identical way.
Casually suggesting NIH can be an insult to the intellectual & creative abilities of a team. Sometimes it is warranted. Other times, it is not. I believe most guys and gals in the developer community are astute enough to ferret out NIH and ignore it.
P.S. On the other hand, you have a very impressive set of github repos. Kudos. You have successfully made me both care and jealous that I never get around to open-sourcing anything because I never feel like any side project is perfect enough to let others see (and because most of what I work on is closed-source for clients). Sad.
Sorry to bring up NIH so willy-nilly. Ultimately, you guys did an inspiring job and from what I can tell of implementation you did it even more elegantly than I did.
The whole simultaneous invention thing is really interesting to me. It was covered in two great books, What Technology Wants and Where Good Ideas Come From. Both seem to imply that the more utility something has in the "adjacent possible", the more likely it will be invented by many people in roughly the same time period. This actually quite frustrates me about technology! What's worse is that this phenomenon will only increase over time. And because it's about utility (never mind the illusion of unique "UX" of products now), there is little room for expression or creating something unique to you that matters.
It doesn't matter what you do -- writing, design, code, philosophy, advocacy, lemonade -- if you want it to get out there, if you want people to use it, you have to market. It doesn't matter whether you're "selling" in the sense of exchanging money or not.
Marketing is critical. And marketing isn't just telling people about it, or advertising. Marketing is making a site that is attractive (to the audience), giving your project a name that is easy to understand and remember, and easy to google for, and making it easy to use, to install, work with it, share it, troubleshoot it, making it easy to find help, easy to find other people who use it in a community. Marketing means making it clear as hell what the user gets out of your "product," and keeping the focus on the user at all times.
These are all relative, depending on your audience. (Ex: Lots of developer types actively enjoy the simplest possible visual design, and enjoy the thrill of conquering something that's a little bit technically hard. But not all. And none of them enjoy searching & searching and being unable to find the thing.)
If you don't to make money off your work, great. But if you want people to use it, you have to market it, that's just the way it works. It's not good enough to simply make something you want to make and stick it out there. Just being "free" and "open" isn't enough.
If more open source developers would take the time to learn how to effectively promote their own work, the world would be a better place. But sadly, because most OSS developers belong to a group that considers marketing "evil," and has a chip-on-the-shoulder reaction to the idea that marketing is required for even free-as-in-beer projects, it won't happen.
I completely understand. Unfortunately, I'm too busy building cool shit to market it like crazy. I look for clever ways to market, like getting my company to promote it or including it in presentations.
I know it's human nature to like prettier things, I'm just surprised when localtunnel was posted on Hacker News originally, it did not get as much attention as showoff.io and it does the EXACT same thing. I guess I'm disappointed in the community for that?
Sorry, I don't quite get this. Why can't I just grab my public IP address from Whatismyip.com, and check the Web Sharing option under System Preferences on my Mac? (For Linux, simply fire up Apache; my guess is that most Linux users know how to do that).
Though the real challenge this product solves is in getting around firewall restrictions. Let's say you're at the airport on free wifi. How are you going to share localhost then?
You'll often have NAT to deal with as well, and have to set up explicit port forwards to your local device (and give it a static IP address) in your routers.
I'm inclined to agree, currently I have ssh setup on my home machine and use dyndns which is free and pretty simple. Setting up a server would be equally simple for the technically inclined.
You could do that, including figuring out your NAT/Firewall, how to proxy through apache to your app and have to worry about security. Or, you could just do this:
show 3100
I dunno, I'm a busy dude and my time isn't free. So I'd rather pay $5 a month to have someone figure this out for me and let me spend time leveraging it to build cool stuff of my own.
Err... what? If you're even a half-serious developer, you're going to have a static IP or something like dyndns. You're also going to have your own domain, VPN, and port forwarding. Setting this up on your own network is trivial. You can use it no matter where you are, so long as you have internet. Just buy a cheapo router that supports DD-WRT, set up dyndns, and you're good to go. Seriously.
I get it that some people aren't great at networking, but all this stuff is really basic. Not that hard to learn.
DynDNS is a bitch, but I usually just setup an SSH tunnel between my box and one of my cloud servers to show off my localhost over any kind of shitty connection.
Even works at Starbucks, which I don't think DynDNS does.
This app is really neat, though. Creating an SSH tunnel is trivial once you learn how it works, but before, it seems insurmountably complicated. This service makes it super easy.
Oh, and using the same trick in reverse, I get to use Netflix, Hulu, Pandora etc. when I'm out of the country. Or just protect my privacy from Coffee shops.
>If you're even a half-serious developer, you're going to have a static IP or something like dyndns. You're also going to have your own domain, VPN, and port forwarding. Setting this up on your own network is trivial. You can use it no matter where you are, so long as you have internet. Just buy a cheapo router that supports DD-WRT, set up dyndns, and you're good to go.
Um,
Assume none of the above - and instead assume that I am a designer with a local copy of the new t-shirt site im making for my hipster clients - and I am working from the local Java Jungle, not behind my 'cheapo dd-wrt + dyndns +blah blah blah'
I want to show them a latest rev and get feed back.
Use this, and its no problem. Yours is doable, non-trivial and zero elegance.
So, like, the cheapo dd-wrt router is always on, always connected to the internet, at your home/office. You set up your domain to point to it. You VPN to it from your Java Jungle. On Windows/Mac it's a simple as clicking a few buttons. On Linux, a single command at the prompt. That's it. You're done. The router routes the traffic to your lappie via the VPN.
On top of that, you're using your own domain, which is more professional in my humble opinion. It's lappie.yourdomain.com and not lappie.theirdomain.com ... oh yeah, and it's free. Just get one of your nerd friends to set it up. Once it's up, it'll run forever.
Wow. I'm glad you said that. I've got experience with networks, but I can't design or code (I have utilized plenty of templates, libraries, and shell scripts written by others, but I'm not much of a creator). I simply looked over this segment of the populace. It's still a niche, and any criticism I've leveled in this thread is in the hope that they create better clients or an API for their service to make it more accessible, as it is too technocal still to make a difference outside of semi-technical people.
This could be a great step forward in helping peopole understand, and take responsibility for their online presence.
I'm sort of shocked that most web developers don't have at least one small virtual node somewhere out in the real world where they can demo things and/or forward ports.......
No way. Having your own static IP can get very expensive. Dyndns is a horrific pita. Fiddling with routers is annoying. No serious developer is judged by a client on any of these things. And none I have ever worked with as an indie developer (like an $8 billion/yr company who depends on software I built every day) would ever care or even ask about any of those things. One's professionalism is not determined by these things. I made a lot of money as a serious developer without any client caring or knowing if I had a domain, static IP, etc. But I made stuff work, and that's all that ever matters.
I get a block of 8 static IPs included with my service. Then again, I have an office and it's a business class connection. I pay $75 per month and get 25 down / 5 up.
I have 0 static IPs (that I am aware of) included with my service. Then again, I have a residential line and it's a fiber optic connection. I'm a bit cheap, so I pay $70 per month and get 50 down / 50 up.
The usability of the payments form is poor. It doesn't state which fields are required (if it's all of them, it should say so at the top). I understand not remembering the credit card number or CVN between requests, but it also forgets the expiry date, and the country. I had to resubmit several times because of this. Fortunately in my case I had the patience to go through it regardless, but given the amount of research indicating people's willingness to drop out of payment processes halfway through, this is something really worth fixing.
True, but when using numbers to make a menu selection, it makes more sense to start numbering at 1, because of the way number keys are arranged across the top of the keyboard. It's slightly less intuitive to have the key corresponding to the first menu option positioned far to the right of the subsequent options.
In fact, I had never thought that one could argue that the '0' key should be to the left of the '1' key… keyboards predate computers, so I see why this is not the case, but it could be argued.
Yes, I think I understand why it starts with 0. However, this is about context. When I am coding, I know indexes start with 0. When I am picking from a list of items in a menu, the context is starting from one.
When you go to a restaurant and you order the first thing on the menu, you don't say "I'd like to have the zeroth item" do you?
There's this bit about the 'show' command on your computer. I'm wondering if that's a bash script, or a standalone bit of software to forward data to their servers?
And there's still that ugly port number in the URL. Vast majority of clients would neither like nor understand this -- most of them don't even know what a port number is.
EDIT: Also, Showoff isn't suggesting it's doing something you couldn't do before. It just does it in a simpler & pain-free way.
Set up an Apache mod_proxy from port 8080 on your server's localhost to a vhost at showoff.yourdomain.com.
You'll have to make sure to build your app to not make any assumptions about where it's running (ex: links to "http://localhost:3000/path), but you should be doing that anyway.
> You have to have Apache setup (which, when developing a new project, you may likely not have even reached that point).
Showoff project is definitely cool, but instead of apache, nginx installs in one command and can easily proxy like this with about 10 lines of easily googled config using 1/10 of the resources on a simple prgmr account or the like.
With just the most minuscule bit of initial setup a simple bash function using just SSH can replicate all of the functionality (and more) of showoff.io, with just as much ease ('show 3000 subdomain') but hopefully the upcoming features will make it a more viable proposition... :)
Then again, I'm quite happy with a VPS setup since I get all of the extra benefits of having the server around...
Hmm I've been using the following: https://gist.github.com/932137
for some time now - it's just a bash function which lets me type:
$ show 3000 test
and get http://test.tekacs.com/ -> port 3000 on my computer using just SSH, assuming you have root access to the server (which you would need to set up forwarding on port 80 anyway...)
It's a bit like saying: if you have a private server you can use: git push blah instead of using DropBox. (This doesn not invalidate your point; far from it, I'm just saying that because it's somewhat trivial for us geek doesn't mean it's not something that other folks would pay for.
I am not picky about design. But please change the colors. There is not enough contrast. I am really making an effort to read just because everybody says it is worth it.
Check out http://pagekite.net/ , it's Python and it runs on Windows just fine. We are working on a user-friendly installer and GUI, but if you're a developer you don't need that. :-)
Hmm, I also think you need a new name. 'Showoff' says exactly what it does, lets you 'showoff' your work. What's a pagekite? (reminds of the 'mint' vs that unpronouncablely named finance site naming issue).
I'm an ops guy, lets say I want to give access to my next generation product to a usability lab for feedback. Can you imagine what that whole experience would feel like?
I'll want some reporting of when the site was used and what was done.
I'll want full cookie transparency so that the user experience will be 'real' but not require the developers to do anything special to get there.
I'll want to know that I can turn it off pretty much instantly if I think there is a problem.
That is perhaps a product that is orthogonal to the 'put a demo page up' kind of thing though.
Regarding the name, I actually think PageKite is an excellent name and we are lucky to have it. It's googlable, we got the .com for cheap, it's a strong trademark. If I draw you a picture of your site flying like a kite in the clouds, connected by a string to your laptop, you'll find the name is a perfect fit... :-)
Admittedly, I do need to get that picture drawn.
Regarding the technical side, you do get all those things. Some you get by collecting your own server logs, some (like cookie transparency and instant-off) you get through the nature of the system itself.
But if focusing on the website demo market, then making things easier by adding reports etc. would probably make sense at some point.
"Some you get by collecting your own server logs, ..."
When I say 'internalize' I mean you need to shift your perspective mentally from 'techie' to 'customer.'
Anything you can do for the customer, by default, you should do for the customer. A successful product starts "click here", "use now". Leave the 'collect your own logs' as a thing you can do if you want to, but not you have to. And don't get hung up on this exact feature request, it is a mindset for every single feature.
You have no less than 10 comments in this single submission, and in seven of them you are explaining why someone who is a potential customer is wrong about what they are asking for. That is a pretty strong signal, and one you ignore at your peril.
"You have no less than 10 comments in this single submission, and in seven of them you are explaining why someone who is a potential customer is wrong about what they are asking for."
Really? I thought I was saying we were was working on all these things, that it was a work in progress, and I appreciated the feedback. I'm honestly quite confused that you got that out of my comments.
I may have misunderstood your question here, I thought you were asking whether you could accomplish something using PageKite, but perhaps you were being more hypothetical about the desires and first impressions of a potential customer?
Ok, here is a concrete example of a communication style that I'm talking about.
I wrote:
"Hmm, I also think you need a new name. 'Showoff' says exactly what it does, lets you 'showoff' your work. What's a pagekite? (reminds of the 'mint' vs that unpronouncablely named finance site naming issue)."
That is feedback from a potential customer that I, as the customer, don't get any sense of what your product is about from the name. I cite by inference a great postmortem written up about the 'Mint' startup, and had you searched for 'mint postmortem' you could have come up with the link [1] below. The alternative to Mint was a website called Wesabe. Both Mint and Wesabe did personal finance, Wesabe was in some ways technically 'superior' to Mint and yet Mint "won."
So you have this bit of feedback on how the name you've chosen isn't helping your product get any visibility and you respond like this:
"Regarding the name, I actually think PageKite is an excellent name and we are lucky to have it. It's googlable, we got the .com for cheap, it's a strong trademark. If I draw you a picture of your site flying like a kite in the clouds, connected by a string to your laptop, you'll find the name is a perfect fit... :-)"
You tell me, your potential customer, that I am wrong in thinking your name doesn't tell me what I need to know about your site. And you go on to tell me how all it would take would be some graphic, which you don't have time to draw right now, of a kite made out of a web page flying in some clouds attached to your laptop to make it obvious.
Your name is a 'visual pun' which you no doubt find exceptionally clever, you know "in the cloud", "easy as flying a kite". Except that nobody types into a search engine "How can I make my web site look like a kite?" but they just might type in "How can I show off my web site?" Search engines are stupid, they will give lots of positive ranking love to the word 'showoff' is in the URL to showoff.io and zero ranking love to a site named 'pagekite'.
You added "we got the .com for cheap" which should be a clue. If you read the Mint postmortem Kagan says, "The site was originally called mymint.com. I was initially against buying Mint.com but Aaron / Anton spent months acquiring the domain. This may seem inconsequential, but would you feel more comfortable entering your bank details on Wesabe.com or Mint.com?"
Do you see the difference in thinking there? One person thinking 'well we already have the domain, so we'll go with that' and the other saying "I'm going to ask my customer to come to this site, what would they be more comfortable with?"
When I look back at your responses in this thread it is clear you are passionate about this project of yours and that is great. There have been a number of comments offering you feedback on both your product and your presentation. In nearly every case your response to that feedback is a combination of "thank you for sharing, this is what you (the commenter) missed about that particular feature and why ours is better."
When you responded as you did about the name I just thought to myself, "Here is a brilliant guy who is going to be frustrated at how little traction his project gets until he can move himself mentally to a place where he can internalize the feedback and act on it."
Its only an observation, I probably should have kept it to myself, and I have no doubt created more problems than good at this point. I'll go back to reading now.
The only tough part is getting it to find your ssh-keys. I did this by running it inside git bash, which as a Windows user you might have anyway if you've installed msysgit. Of course cygwin would also probably work. ssh-keygen to make your keys, and then run your server and then show.
I couldn't figure out how to get the -i command to work properly so it found your ssh keys, maybe I should try that again and see if you can do everything with PuTTYgen for a 'true' windows solution.
At the corporates I've worked at, this product would have been preemptively blocked anyway because it relies on an outbound ssh connection through the external firewall, which wouldn't have been allowed. I'm not sure if that's standard practice at other SuperGloboCorp organizations.
This looks awesome. I would not use something like this because I have lots of ways to make it happen without paying extra (as in I already have a bunch of servers I can use for ssh tunneling). However, I can see how you would get a bunch of dedicated users. Good luck.
My only question is: won't this service be completely obsoleted by IPv6? I already use IPv6 instead of having to VPN into a NAT'ed office from my NAT'ed home. Just giving someone who has IPv6 connectivity a URL that uses one of my IPv6 addresses will accomplish something similar, will it not?
Just because you have an IPv6 address doesn't mean you won't be trapped behind a firewall that blocks incoming connections.
And when you have an IPv6 address and want to show something to a person with an IPv4 address... then you will definitely need either showoff or pagekite, or something like that to act as a bridge.
Perhaps I missed it in the FAQ, but how do you turn it off? CTRL+C?
I understand that you're aiming for simplicity here, but it would be handy to have a menubar icon (or whatever is appropriate for the given platform) to indicate that it's running or not.
Or maybe you actually have that, but it's not clear that you do from the website.
Presumably, but I haven't tried running it. I'd kind of like to know how to turn off something that's going to do port-forwarding on my machine before starting it up.
The /usr/bin/show script simply locates the gem and runs it in a Ruby process. You can kill it like any other console program. Inspect the gem if you're curious.
The interesting part of the gem starts off like this:
A menubar icon (assuming you're meaning Mac OS (or any OS really)) is not something you get from a simple shell script, typically. Please correct me if I'm wrong.
Normally a gui tool doesn't advertize how you invoke it from the commandline, but there are plenty of cases where the command-line invoked application doesn't retain the foreground while running. This tool is probably non-interactive at the console, I have zero expectation that it won't fork off into the background.
221 comments
[ 5.3 ms ] story [ 440 ms ] threadHowever, it's not obvious if this is Ruby-only or not? I don't use Ruby, so that's kind of a big deal.
I installed the Gem and was able to acquire a URL but kept getting an error:
An error has occurred: {"stack":"Error: socket hang up\n at Socket.<anonymous> (http.js:1271:45)\n at Socket.emit (events.js:64:17)\n at Array.0 (net.js:825:12)\n at EventEmitter._tickCallback (node.js:126:26)","message":"socket hang up"}
If you just wanted to test it out you could start something like "python -m SimpleHTTPServer" and then "show 8000", which will serve files from your local machine at your showoff url (I might recommend running the server in an empty directory).
Sheesh. Ruby runs over 3000, if you're not running the ruby server on 3000 there's not going to be anything listening.
Facepalm.
"Woops, you said your server was running on port <port>. Is it?"
I'd also consider a "Enterprise plan" which is monthly plan with possibly some restrictions based on IP or with password protection etc.
Since Showoff is basically a fancy SSH tunnel, it should work with any kind of webserver. If there's enough interest, we'll probably bundle up client software in ways that don't depend on `gem install`.
The tech looks reasonably cool, but what is the use case?
EDIT: Your site also makes it sound like it is HTTP(S) only. If it's not, you might want to clarify that.
We often develop sites on our laptops. The more complicated sites are, the more there is to sync around (databases, dependencies to install, version control commits, &c). Showoff is a quick way for us to get feedback from clients or each other without adding overhead to our development process.
p.s. surprised they didn't go for 99 cents
It's possible that they are also pandering to people like me who dislike prices written in that way. I am annoyed by the chore of mentally adding one to every price ending in 99 cents, and I respect sellers who write prices like that less.
ssh -R8000:127.0.0.1:80 my.vps.com
This will forward all connections to http://my.vps.com:8000/ to port 80 on your local machine.
Adjust ports as necessary.
Then you also have the VPS where you can actually host a copy of your app - but that's off-topic.
It's also really nice for testing web hooks or API callback URLs against a local web server (e.g. ecommerce sites with IPN, &c). If you sign up for an unlimited account, you can choose a permanent URL to use for your tunnel (e.g. "my-name.showoff.io").
Working independently on a project or projects with distinct clients who either need or want to give input/feedback on feature development can be greatly alleviated: work up a quick prototype, show off from my local dev machine (never have to touch a server), call/IM my-name.showoff.io, and they get to see it right away, in the same medium they will eventually be using it. This is so much nicer than sending a wireframe or design of a feature.
The long-term benefit is that the my-name.showoff.io URL can be pretty easy to recall & reuse for any number of clients & features.
Is this for live demos or for sharing documents? If the former, why wouldn't I just turn on apache and give them my IP?
- more contrast between text and background
- explain who the intended user is (web dev w/o strong LAMP background. I would find it easier to turn all that stuff on than to try to use a new product, and it's not worth even $1 to me to do that... so I'm clearly not your target customer)
- explain what your value prop is (it's not "Now You Can Share!", it's, "Now You Can Share With One Click"). The way it's explained, it feels like a new capability...
edit, formatting.
It's just that's more than most of us, as well as most of the devs we know, want to have to do to share local projects-still-in-development with our teams and clients.
Example use cases:
CASE ONE. You are working on a new site or feature for a Django/Ruby/.NET site on your local box. You've been banging away at it for the last couple hours, and are trying to explain it to your client, coworker, boss, or friend. You have it running locally just fine, are playing with it at http://localhost:1234/ and it looks pretty good. Everything's in good shape to show off your great new thing. If only they could both see it & interact with it, they'd be able to try it out and let you know what they think. How are you going to do this?
-Option 1: Leverage your strong LAMP/whatever background & ssh to your development server, get all your proj files up-to-date, migrate/upgrade a db schema, restart your instance, test everything out to make sure there were no unforeseen impacts from the change before you let anyone else see it (you don't want them to hit the page & get a 500 (you do test before you let anyone try a new feature, right?)), then paste the URL to your client, coworker, boss, or friend.
-Option 2: switch to a shell & execute `show 8000`, then paste the URL to your client, coworker, boss, or friend.
CASE TWO. You are updating a site that's been around for a long time and is already live on the web. Some important changes and new features have been requested & you've been banging 'em out for a couple hours (or days). You need to get them before your client, coworkers, boss, or friend before they are live on the site. You currently have everything running locally at http://localhost:1234/ and it looks good to you. Maybe you have a few questions about whether you're on the right tracks. What'd be really nice is if you could put up what you have, let your client, coworkers, boss, or friend check it out, and maybe go thru a few page refreshes rapidly to see some other options (especially helpful with CSS changes/fixes).
-Option 1: Leverage your strong LAMP/whatever background & ssh to your development server, get all your proj files up-to-date (including making sure the dev site is exactly identical to the live site and then apply your changes), migrate/upgrade a db, restart your instance, test everything out to make sure there were no unforeseen impacts from the change before you let anyone else see it (you don't want them to hit the page & get a 500 (you do test before you let anyone try a new feature, right?)), then paste the URL to your client, coworker, boss, or friend. Time to try the next change? Repeat all over again.
-Option 2: switch to a shell; execute `show 8000`; paste the URL to your client, coworker, boss, or friend. Time to try the next change? Usually just a quick local Save action away & asking them to refresh.
If anything, you might even argue that the people who have a strong LAMP/whatever background are exactly the target customer for Showoff -- they're the only ones who can read Option 1 and groan in disgust at doing all that just to try out a pending feature/fix.
The value prop isn't merely "Now You Can Share With One Click" (and not just because there is no clicking involved) ;). It's that and m...
All I was saying is two-part:
1) the marketing copy on the landing page needs some work. the design needs some work as well. The main message was unclear to me
2) this product isn't for everyone. E.g., I do all my dev work on virtual machines. One of my colleagues has a custom deployment script. Many people use continuous deployment.
I guess all I'm suggesting is that the creator move to market themselves to a certain segment of the population. I'm not in that segment, but it was difficult for me to determine that. I suspect it's because the copywriter is loathe to exclude a possible customer. In my opinion, the "grab at everyone" approach hurts more than it helps. Go specific!
And finally, not everyone has Ruby running. I've never installed a gem in my life. Which would I rather do: something that I have done a million times and have partially/fully automated (depl to internet), or try to setup a ruby system?
But for people without any Ruby experience, you don't know that fact ahead of time. All you see is the unknown ruby command. And my impression (as a non-user of ruby) is that it's hard to get going. So a potential customer may see these issues as a hurdle to jump.
Two suggestions and a question:
* How about a free trial for unlimited access or some other kind of cancellation guarantee?
* Minor one, but the dark contrast on your website UI is about equivalent to the background on a typical lightbox...i.e. it reads "disabled" to me on first glance.
One question:
I assume I could map a CNAME record to the showoff URL? (So cookies work, etc.)
If you sign up for an unlimited account and you're _really_ unhappy, send an email to support@showoff.io and we can talk about a refund :)
I happen to be working on an account/authentication service right now, so being able to rig it with a working domain name (via CNAME) so cookies work with my app is definitely big on my list.
I even tried playing with the bookmarks on the top right corner to see if they would light up the site.
They're out-marketing me, I guess. It looks nicely done!
I would even suggest taking inspiration from the clearly annotated three-panel diagram on the showoff.io homepage - very clear and simple. I am guessing that pagekite might offer more functionality than this, but again, I am having trouble figuring that out.
Best of luck!
Thanks!
Here is some honest critique for you: It's about more than marketing. Where they are blowing you guys away is usability -- partly in the product itself, but more on the website.
In less than 100 words I know: a) exactly what showoff does, and b) exactly how to get it up and running.
Compare that to your Quick Start guide: https://pagekite.net/support/quickstart/
I mean, my eyes just glaze over when I see that. Get me running and get out of my way. As someone else in the thread said, don't waste my time selling me "benefits" -- that's what enterprise salespeople do to enterprise buyers.
Also, I like that you have a free trial, but when are you going to tell me how much it costs? And do I really need to complete an optional survey and check a terms of service box?
Sorry if I sound like I'm being hard on you guys, but even though I don't know you at all I'm confident you're capable of more. :) Don't fall back on the "we're not good at marketing" excuse. Spend a lot of time thinking about how you can simplify, simplify, simplify, simplify every single aspect of the interaction on your website and your product itself.
I'll keep my eye on your product though. Thanks.
Our problem is we have a highly technical, generic tool and we've found it really hard to write docs that are easy to understand and a product description that resonates with people.
It's quite eye-opening to see how someone with a relatively small subset of our features can completely wow everyone by very clearly presenting just one use-case. Simplicity really seems to be key, at least to getting this kind of attention.
Take a look at "How We Increased Conversions By 25% (Again) With Our Latest Redesign (carwoo.com)" http://news.ycombinator.com/item?id=2420447
You have a whole wall of words about features, but I can't judge in 5 seconds what it does and if i'm interested. Switch to user stories.
If you aren't UNIXy you can use one of the dozens of update clients:
http://www.dyndns.com/support/clients/
dyndns is just one provider. you could host it yourself. There are dozens of routers and clients that support DDNS protocol, no need to reinvent things.
On a side note, this reminds me that isaacs (creator of npm) has pushed npm to be for development and not for deploying to end users. Hence using gem instead of npm.
The idea is perfect and I encounter this problem daily and always too lazy to bother setting up a dynamic dns.
Signing up for an unlimited plan right now.
Well done.
I'm not a big fan of dark gray background with darker gray text though.
This is not one of those. This is one of those cases where I'm not a bit jealous because something so obvious or inane or dumb took off and became Twitter, but because it's just so damn fantastic. This is one of those things that is so elegant and smart that it makes me feel like a complete idiot.
This is going to do very well.
Where are my buckets of money? Oh yeah, I don't care.
If a fancy website is all I need, I guess that's what I'll be doing this weekend. And I guess SSL and CNAME support...
On a positive note, this is the first time I thought about doing something like this, and it's also the first time I heard about your project.
I'll try it out, thanks!
To be fair, the "fancy website" is a byproduct of designers who like to make stuff look good, and the rest of Showoff's team caring very much about not just making stuff that works (of which they make a lot, much of which is hidden away in obscurity), but about making it easy for people to use who wouldn't perhaps take on the task themselves—and I don't think there is anything at all wrong with that.
However, I don't think it is fair to imply creating this tool (and its website) was a product of caring about money, or duplicating and obscuring your (or anyone else's) efforts. It is like many other ideas out there that came from a real need, hacking it together, and then asking if people might find it useful enough to pay for it. That's not a reason to disparage or diminish a job well done.
In the end, it looks like Showoff's also brought attention to your project, pagekite, and plenty of other ways people have shared to do the same thing. Today was the first time I'd heard of localtunnel, but I've done this same bit of showing off localhost before for clients and coworkers on my own--and it's a bit like splitting hairs to call it duplication. Hackers hack. It's what we do. I definitely like open sourcing when it makes sense. But I also like to eat and have a roof over my head. Open source does not hold a monopoly on good intentions.
The idea is clearly communicated, pros and cons and alternatives discussed... and now it's a tiny bit easier to explain to people what we are doing.
Hats off to the Showoff team for a job well done! :-)
It's great to have the idea validated, especially since mine and showoff.io's user experience are nearly identical. And this will force me to make a pretty homepage and add features.
So now that I've complained, I don't think I can complain much more.
Now... open source vs commercial, that's a whole different discussion (although probably not what you'd expect).
Casually suggesting NIH can be an insult to the intellectual & creative abilities of a team. Sometimes it is warranted. Other times, it is not. I believe most guys and gals in the developer community are astute enough to ferret out NIH and ignore it.
P.S. On the other hand, you have a very impressive set of github repos. Kudos. You have successfully made me both care and jealous that I never get around to open-sourcing anything because I never feel like any side project is perfect enough to let others see (and because most of what I work on is closed-source for clients). Sad.
The whole simultaneous invention thing is really interesting to me. It was covered in two great books, What Technology Wants and Where Good Ideas Come From. Both seem to imply that the more utility something has in the "adjacent possible", the more likely it will be invented by many people in roughly the same time period. This actually quite frustrates me about technology! What's worse is that this phenomenon will only increase over time. And because it's about utility (never mind the illusion of unique "UX" of products now), there is little room for expression or creating something unique to you that matters.
Marketing is critical. And marketing isn't just telling people about it, or advertising. Marketing is making a site that is attractive (to the audience), giving your project a name that is easy to understand and remember, and easy to google for, and making it easy to use, to install, work with it, share it, troubleshoot it, making it easy to find help, easy to find other people who use it in a community. Marketing means making it clear as hell what the user gets out of your "product," and keeping the focus on the user at all times.
These are all relative, depending on your audience. (Ex: Lots of developer types actively enjoy the simplest possible visual design, and enjoy the thrill of conquering something that's a little bit technically hard. But not all. And none of them enjoy searching & searching and being unable to find the thing.)
If you don't to make money off your work, great. But if you want people to use it, you have to market it, that's just the way it works. It's not good enough to simply make something you want to make and stick it out there. Just being "free" and "open" isn't enough.
If more open source developers would take the time to learn how to effectively promote their own work, the world would be a better place. But sadly, because most OSS developers belong to a group that considers marketing "evil," and has a chip-on-the-shoulder reaction to the idea that marketing is required for even free-as-in-beer projects, it won't happen.
I know it's human nature to like prettier things, I'm just surprised when localtunnel was posted on Hacker News originally, it did not get as much attention as showoff.io and it does the EXACT same thing. I guess I'm disappointed in the community for that?
Though the real challenge this product solves is in getting around firewall restrictions. Let's say you're at the airport on free wifi. How are you going to share localhost then?
I get it that some people aren't great at networking, but all this stuff is really basic. Not that hard to learn.
Even works at Starbucks, which I don't think DynDNS does.
This app is really neat, though. Creating an SSH tunnel is trivial once you learn how it works, but before, it seems insurmountably complicated. This service makes it super easy.
Oh, and using the same trick in reverse, I get to use Netflix, Hulu, Pandora etc. when I'm out of the country. Or just protect my privacy from Coffee shops.
Um,
Assume none of the above - and instead assume that I am a designer with a local copy of the new t-shirt site im making for my hipster clients - and I am working from the local Java Jungle, not behind my 'cheapo dd-wrt + dyndns +blah blah blah'
I want to show them a latest rev and get feed back.
Use this, and its no problem. Yours is doable, non-trivial and zero elegance.
call me oldschool, I know...
On top of that, you're using your own domain, which is more professional in my humble opinion. It's lappie.yourdomain.com and not lappie.theirdomain.com ... oh yeah, and it's free. Just get one of your nerd friends to set it up. Once it's up, it'll run forever.
There is nothing wrong with your method, except that it is longer than "Step one."
This could be a great step forward in helping peopole understand, and take responsibility for their online presence.
But that's just me.
:)
I don't have a credit card, so can't try it.
Choose the public key you'd like to use:
[0] id_dsa.pub
[1] id_rsa.pub
[q] Quit
This should start with 1, not 0.
In fact, I had never thought that one could argue that the '0' key should be to the left of the '1' key… keyboards predate computers, so I see why this is not the case, but it could be argued.
When you go to a restaurant and you order the first thing on the menu, you don't say "I'd like to have the zeroth item" do you?
* HTTPS * Works without access to public-facing server. * Pretty URL * Eventually will support more stuff besides just port-forwarding :)
EDIT: It's not a bash script. It's a Ruby wrapper.
EDIT: Also, Showoff isn't suggesting it's doing something you couldn't do before. It just does it in a simpler & pain-free way.
You'll have to make sure to build your app to not make any assumptions about where it's running (ex: links to "http://localhost:3000/path), but you should be doing that anyway.
You have to have Apache setup (which, when developing a new project, you may likely not have even reached that point).
You can also save your current file by going to File > Save. But Ctrl/Cmd+S is easier (and probably what you use every day).
Showoff project is definitely cool, but instead of apache, nginx installs in one command and can easily proxy like this with about 10 lines of easily googled config using 1/10 of the resources on a simple prgmr account or the like.
Then again, I'm quite happy with a VPS setup since I get all of the extra benefits of having the server around...
$ show 3000 test
and get http://test.tekacs.com/ -> port 3000 on my computer using just SSH, assuming you have root access to the server (which you would need to set up forwarding on port 80 anyway...)
$ ssh -tR 1080:127.0.0.1:$1 vps "sudo ssh -Nl \$USER -L $REMOTE:80:127.0.0.1:1080 localhost"
being the functional line...
Showoff is a great idea though, best of luck!!
Servers are awesome. :-)
I like subtle, minimalist design, and the look grabbed me. But I also have somewhat diminished vision, and I had to blow the page up a lot to read it.
A future market, if you're interested.
I'm an ops guy, lets say I want to give access to my next generation product to a usability lab for feedback. Can you imagine what that whole experience would feel like?
I'll want some reporting of when the site was used and what was done.
I'll want full cookie transparency so that the user experience will be 'real' but not require the developers to do anything special to get there.
I'll want to know that I can turn it off pretty much instantly if I think there is a problem.
That is perhaps a product that is orthogonal to the 'put a demo page up' kind of thing though.
Admittedly, I do need to get that picture drawn.
Regarding the technical side, you do get all those things. Some you get by collecting your own server logs, some (like cookie transparency and instant-off) you get through the nature of the system itself.
But if focusing on the website demo market, then making things easier by adding reports etc. would probably make sense at some point.
Thanks for your comments!
"Some you get by collecting your own server logs, ..."
When I say 'internalize' I mean you need to shift your perspective mentally from 'techie' to 'customer.'
Anything you can do for the customer, by default, you should do for the customer. A successful product starts "click here", "use now". Leave the 'collect your own logs' as a thing you can do if you want to, but not you have to. And don't get hung up on this exact feature request, it is a mindset for every single feature.
You have no less than 10 comments in this single submission, and in seven of them you are explaining why someone who is a potential customer is wrong about what they are asking for. That is a pretty strong signal, and one you ignore at your peril.
Really? I thought I was saying we were was working on all these things, that it was a work in progress, and I appreciated the feedback. I'm honestly quite confused that you got that out of my comments.
I may have misunderstood your question here, I thought you were asking whether you could accomplish something using PageKite, but perhaps you were being more hypothetical about the desires and first impressions of a potential customer?
I wrote: "Hmm, I also think you need a new name. 'Showoff' says exactly what it does, lets you 'showoff' your work. What's a pagekite? (reminds of the 'mint' vs that unpronouncablely named finance site naming issue)."
That is feedback from a potential customer that I, as the customer, don't get any sense of what your product is about from the name. I cite by inference a great postmortem written up about the 'Mint' startup, and had you searched for 'mint postmortem' you could have come up with the link [1] below. The alternative to Mint was a website called Wesabe. Both Mint and Wesabe did personal finance, Wesabe was in some ways technically 'superior' to Mint and yet Mint "won."
So you have this bit of feedback on how the name you've chosen isn't helping your product get any visibility and you respond like this:
"Regarding the name, I actually think PageKite is an excellent name and we are lucky to have it. It's googlable, we got the .com for cheap, it's a strong trademark. If I draw you a picture of your site flying like a kite in the clouds, connected by a string to your laptop, you'll find the name is a perfect fit... :-)"
You tell me, your potential customer, that I am wrong in thinking your name doesn't tell me what I need to know about your site. And you go on to tell me how all it would take would be some graphic, which you don't have time to draw right now, of a kite made out of a web page flying in some clouds attached to your laptop to make it obvious.
Your name is a 'visual pun' which you no doubt find exceptionally clever, you know "in the cloud", "easy as flying a kite". Except that nobody types into a search engine "How can I make my web site look like a kite?" but they just might type in "How can I show off my web site?" Search engines are stupid, they will give lots of positive ranking love to the word 'showoff' is in the URL to showoff.io and zero ranking love to a site named 'pagekite'.
You added "we got the .com for cheap" which should be a clue. If you read the Mint postmortem Kagan says, "The site was originally called mymint.com. I was initially against buying Mint.com but Aaron / Anton spent months acquiring the domain. This may seem inconsequential, but would you feel more comfortable entering your bank details on Wesabe.com or Mint.com?"
Do you see the difference in thinking there? One person thinking 'well we already have the domain, so we'll go with that' and the other saying "I'm going to ask my customer to come to this site, what would they be more comfortable with?"
When I look back at your responses in this thread it is clear you are passionate about this project of yours and that is great. There have been a number of comments offering you feedback on both your product and your presentation. In nearly every case your response to that feedback is a combination of "thank you for sharing, this is what you (the commenter) missed about that particular feature and why ours is better."
When you responded as you did about the name I just thought to myself, "Here is a brilliant guy who is going to be frustrated at how little traction his project gets until he can move himself mentally to a place where he can internalize the feedback and act on it."
Its only an observation, I probably should have kept it to myself, and I have no doubt created more problems than good at this point. I'll go back to reading now.
[1] http://okdork.com/2010/10/14/how-mint-beat-wesabe/
The only tough part is getting it to find your ssh-keys. I did this by running it inside git bash, which as a Windows user you might have anyway if you've installed msysgit. Of course cygwin would also probably work. ssh-keygen to make your keys, and then run your server and then show.
I couldn't figure out how to get the -i command to work properly so it found your ssh keys, maybe I should try that again and see if you can do everything with PuTTYgen for a 'true' windows solution.
I also think Fortune 500 security teams are going to be blacklisting this domain soon just to keep their devs from opening holes in the firewall.
My only question is: won't this service be completely obsoleted by IPv6? I already use IPv6 instead of having to VPN into a NAT'ed office from my NAT'ed home. Just giving someone who has IPv6 connectivity a URL that uses one of my IPv6 addresses will accomplish something similar, will it not?
Just because you have an IPv6 address doesn't mean you won't be trapped behind a firewall that blocks incoming connections.
And when you have an IPv6 address and want to show something to a person with an IPv4 address... then you will definitely need either showoff or pagekite, or something like that to act as a bridge.
I understand that you're aiming for simplicity here, but it would be handy to have a menubar icon (or whatever is appropriate for the given platform) to indicate that it's running or not.
Or maybe you actually have that, but it's not clear that you do from the website.
The interesting part of the gem starts off like this:
[1] http://rubygems.org/gems/showoff-io