HN user

jiggity

466 karma
Posts10
Comments61
View on HN

Hey everyone, I got fed up with having to juggle around multiple tabs each with a different stream and manually muting them. I spent the past 2 months working on a website that hopefully solves this problem.

This was my first foray into React. After having been developing on Ruby / Node on Heroku, making a pure frontend static app was refreshing.

Here are some of the features:

- Very, very fast. A lot happening under the hood with video to make the swaps near instant. I had to play around with GPU acceleration and CSS transforms to manipulate the streams.

- Load three streams simultaneously, when you swap out the primary stream, the other two streams are muted automatically.

- A powerful compact stream browser accessible to your left. I've tried to make it so you can scan a whole lot of streams at once to pick out the most interesting ones.

- Auto-refreshing stream list. Hopefully you won't even notice it reloading. It's always kept up to date to minimize any offline streamers and catch your favorite streamers coming online.

- Drag and drop streams into screens, click on screens to promote them to the primary. A lot of small miscellaneous things that hopefully make Teevox more intuitive.

- Auto bandwidth optimization, when you select a very high quality stream (ex: Source), instead of switching all three to high quality, it'll only do it for the primary stream. When you swap out for another primary stream, it will seamlessly transition into the proper quality.

The best part was the static HTML portion that allows it to load almost instantly without any preprocessing necessary. Let me know what you think!

Lapface was my weekend hack designed to give the feeling of working with other people. It takes a low resolution webcam shot every 3 seconds of you working. I made the image with slow fps to relieve you of the pressure that usually comes with broadcasting

It feels nice to have people working alongside you. I've had it described as a virtual coffeeshop where you see people in the ambient background

Let me know what you think!

[dead] 13 years ago

Hi all! It started off as a 1 day project and then I ended up getting carried away.

A few features:

- Smart pre-caching to minimize load time.

- Collect interesting vines. Right now, it just dumps it into local storage.

- Duplicates elimination.

- Categories that act like channels for rough curation.

I think the most interesting part about Vine is that you get a huge amount of short-form content with high variance in quality. This is very similar to 9GAG where enjoying a single piece of media is quick and there is a large corpus out there. This means you build an effective curation mechanism, you get a lot of value. In either case, let me know what you think!

Find me on twitter at @jiggityk. I will also be hanging out in the Olark chat on the site.

Ahh, good point! Take a look at: https://makr.io/latest This was the original page I was taken to when I was first introduced to makr.

I guess what drew me was that everybody on that page was in a synchronous experience. You make a composition, everybody will be instantly exposed to it. It's like everyone takes a turn being at the top of HN with the fluidity of Twitter.

I think the founders should make this page their front page: https://makr.io/latest

It's like a live discussion that's going on through pictures. Because of the fact that there is only one new image in focus at a time, there's an active flow that you know everybody else on the site is looking at synchronously.

When you submit a new image and caption combination, you know that 100+ or however many people currently on makr.io will see it immediately. That gives you pretty good odds that you'll get hearts or comments based on what you made. The instant rush you get when one of your creative babies hits it big is incredible.

Yes, that's the idea. If we choose to be lax and rely solely on our "intuition", all we will see are fragments of pieces that look familiar. We can't help but to compare these components to contemporary examples.

When World of Warcraft first came out, there was so much outcry because it was simply "Everquest dumbed down". Players had taken the component that looked familiar in WoW - the grind - and compared it unfavorably simply because that was the only available metric. In reality, the focus of the design was placed elsewhere entirely and the game itself caused a paradigm shift for grinding to be regarded as negative.

For us as intelligent thinkers to willfully ignore this fundamental problem of introducing something new with familiar components and dive down into a circle of hate would constitute being a hater.

The answer has been simple for me: start on Android. The ability to push new fixes to live within a few minutes is a godsend. There is still the overhead of getting people to update the app after the download, but this can be easily remedied by in-app notification for a one-touch update experience.

I don't think it's too unreasonable to assume that if you hit product/market fit on Android, you probably hit it for iOS. Launch MVP on Android -> get first 1k guinea pigs -> pivot, iterate, pivot, iterate -> achieve product / market fit -> spend 3 months creating a beautiful iOS app.

Spent the last 4 hours hacking out a way to integrate UStream!

    1,2,3 - Cycle through PiP screens

    TAB - Show/Hide PiP screens
    
    LEFT, RIGHT - Volume Change
    
    C - Show/Hide Chat
For everyone who's coming to Teevox for the first time, Teevox is an integrated stream viewer that has focused on gaming streams (think Starcraft and League of Legends tournaments) gathered from our very own Twitch.tv and Own3d.tv.

Let me know if you come across any bugs / new features you might want! I can be reached at jiggity - at - gmail.com

The Power of Photos 14 years ago

Roman here has stumbled upon a very powerful force in products. Emotions are the reason why we get up in the morning. It's what gives life color and variety and meaning. It's the reason why we have friends, why some of us might enjoy work, why we prefer to live "life" instead of lying in bed, waiting to die.

What Roman refers to in his photos is the fact that they are an incredibly efficient vehicle of emotions. In a small 480x320px package, you can reminisce about your unrequited crush, your first child just hours old, or your passed-away parents showing you how to use a computer. In that sudden surge, you take a sharp breath, close your eyes as your head begins to spin. You have just experienced a more-significant-than-average moment in life.

I would go as far as to say emotions is the primary metric of life. The "best" times of your life are when you are feeling a surge of emotions, indelibly marking it on your brain as a memorable time. The other times when you don't feel anything tend to fade away until its nothing but a bland grayness when you try to recall that period in time. To maximize life is to maximize the memories you can remember. You maximize the memories you can remember by experiencing more emotions.

Everyone wants to live meaningful, memorable lives. This is a primal need.

.

If emotions give life value, what if we can inject more into ourselves? Somehow we "cheat" the system and get more emotions than what is naturally due to us. This exists. We know this technique as "going to the movies." The reason why people pay $12 to watch a 2-hour long movie is because of the emotion stimulation that we yearn and crave for. It represents a very dense serving of love, humor, coolness, loneliness, accomplishment, disappointment, schadenfreude that leaves reality that much more bland and gray.

But wait, you might argue. I'm a diciplined software engineer. I'm objective, diligent, and focused. I don't have any time to waste with sissy emotions. I'd argue that if anything, as engineers, we're even more addicted to emotions than anyone else. We chase after the pure bliss that comes from building something ourselves with our own hands. That emotion is so powerful that it overtakes what normal people regard as "fun" -- movies, fiction books, computer games.

.

So, what does this mean for our startups? It means that for people who get it, it offers a powerful design mechanism that makes products that give primal value. If you have an effective mechanism to trigger emotions, you have built something of value that people desperately desire.

This applies to any sort of startup -- not just social network / photo apps. Add a narrative to the workflow; make your user feel things. Let them feel a heightened sense of accomplishment. Let them laugh because of an industry inside joke you included. Letting your users feel more things while they use your product is the surest way to beat your competition. More emotions mean more perceived value. More perceived value means more profit.

You are grossly underestimating the effort it takes to find an interesting problem and then find an interesting solution.

Think of it in terms of Legos. Parse is an automatically sorted tray of Lego pieces for you to use. No more prickling your hand for 3 minutes while you search for that one piece -- no boilerplate.

You take a gymnasium filled with a 1000 7-year-olds and hold a contest to see who builds the coolest stuff. No amount of tools is going to help the poor kids who can't think of interesting things to build. On the other hand, one particularly ambitious venturist decides to build a 5-foot-tall T-Rex out of Legos. Parse rapidly accelerates the build process by providing the stuff he needs right when he needs it.

If anything, I foresee an increase in price in the future as we see more apps that provide more value in more sectors. App profit is not a zero sum game. The profit derived will be directly proportional to the value derived.

[TLDR] - The limiting reagent to successful apps is good problems and good solutions. Good tools merely speed up development once you have figured those two things out.

This is very cool stuff guys.

If you had a way to somehow save the chat entries that happened at a particular cursor location, you have a way to capture the exact line of thinking / rationalization that went behind it. This would go way beyond arbitrary line comments while keeping your code clean. It follows that the more controversial / complicated segments of code will have more chat exchange between the developers. If a new developer were to be brought in to modify the code, it brings a very human element towards understanding what exactly the code does and why it was written that way.

I remember being brought into a 100K+ codebase as an intern and simply being overwhelmed at the prospect of trying to learn the structure and why it was written the way it was written. If the codebase also came with chat logs, it would've been an invaluable asset for me to pore over.

If I were you guys, I would make this into a full service that provides the automatic coding narrative. For any company that starts using this system, the value of such information will skyrocket over time.

That's excellent! It certainly had me going, "That's pretty cool." I was checking the arduino docs and it looks like it has a ton of support for connecting the board to the Internet -- even being able to host its own webserver / connect with Twitter / run a Telnet client.

If your goal is to learn further web development, try including a net component as a more central piece of your product vision. It's your way of hacking your brain such that you'll have to, want to learn that stuff to achieve your cool project.

You have it the other way around. Resumes, programming skill, college degrees mean nothing. NOTHING. You should be complaining about your ability to think up interesting problems and interesting solutions to solve them.

.

Think of programming like Legos. The only fun way to play with Legos is to pick an awesome thing to make beforehand (Say a 3 foot tall T-Rex) then figure out how to put random pieces together until you have what you had in mind. It doesn't matter you don't know fluid dynamics, rigid body mechanics, or structural engineering. You don't need a physics degree from MIT to make something interesting in Legos. In fact, the only real thing that really matters is your ability to pick something amazing to make. You will learn how to make it if you have sufficient motivation. You will get motivated because what you're about to make is incredibly exciting.

Say there was an amateur who managed to make a 3 foot tall T-Rex vs. a mechanical engineer who made a 10-inch high structurally sound lego table. An audience sudden enters and they immediately warm around the T-Rex. "But, but," protests the mechanical engineer, "my chair is built with industry best practices. Look at that T-Rex! It's a mish-mash of random structure. No self-respecting engineer would be seen next to that thing." The audience doesn't care. The T-Rex is cool. The T-Rex is interesting. The T-Rex is fun.

Could the amateur have built a better T-Rex if he knew about some of the engineering principles? Yes. But in the end, it doesn't matter. The mechanical engineer chose to build something stuffy and boring. The amateur, using his superior problem discovery skillset, chose to build something amazing.

There are a million engineers out there who can build to industry best practices. There is only one out of a million who trains up his ability to think of something crazy new and interesting to build.

.

A personal story:

I went to MIT and I still didn't know how to do MVC in php properly until my senior year. What I did know how to do was pick a fun problem then bash my head against it repeatedly until it worked. I would spend hours perusing through the docs and obscure questions on bulletin boards until I found a code snippet that did what I wanted. Even then, I didn't always know how the code snippet worked. I just pasted it in and prayed to god it worked. Sometimes it did, most times it didn't. When it didn't, I fiddled around with the variables until somehow, somehow I made it work. And boy, that felt great!

If a semi-decent programmer had looked at my code, he would've gouged his eyes out. The redeeming factor to all my franken-code was the fact that if I did manage to get everything functional at the end, it was always a fun result. Because it was fun, I did side project after side project. It was an addictive cycle -- with the new skills I picked up, I could envision even more fun projects. During the process, I learned about php, MVC, mySQL, then rapidly accelerated through to Android, ObjectiveC, Flash, HTML5, RabbitMQ, Node, and Redis.

.

Jiggity's Guide to Become a Rockstar Startup Founder

1. Try your best to think of a FUN problem. (Think T-Rex equivalent of something "cool" and "interesting" in tech.)

2. Try your best to think up a FUN solution. (Most people never fully achieve steps 1 and 2, settling for mediocre problems and mediocre solutions.)

3. Figure out what is the minimum set of skills you need to make the solution.

4. Learn those skills while making the solution.

5. Congratulations! You've added a creative product to your portfolio and increased your skillset by X amount.

Before Bridge, your two options were:

1. Pay per message at Pusher/UrbanAirship to use their internal systems optimized for messaging.

2. Do it for free writing your own messaging stack using some combination of Node.js / Socket.io / RabbitMQ / ZeroMQ / etc.

.

I liken it either getting fully a written TCP/IP socket client and paying per connection (crazy!) or writing in your own bitstream and ensuring protocol compliance (also crazy! -- easy to get wrong, takes globs of time away from the actual app you want to write).

Using the base level protocol with RabbitMQ / ZeroMQ requires a great deal of design to even achieve something barely production-ready. What the folks here did was use their expert industry messaging knowledge and wrote a messaging protocol that takes care of all edge cases, protocol peculiarities, performance refinements.

The result is a beautifully crafted work of art that provides hyper efficient messaging.

.

The part that sold me completely was the fact that these guys don't charge per message. Better than that, YOU get to control your own server. You handle uptimes, downtimes, and all things that come with owning your server. You don't get locked in.

The tradeoff of complexity + price + handholding goes as follows:

- Pusher / UrbanAirship (Charge per message)

- Bridge (Charge per core you run)

- Write your own Node.js / Socket.io / RabbitMQ, ZeroMQ system (Free)

.

I've been using Bridge's predecessor (Nowjs) for about 9 months now and I can unabashedly say I love Darshan and his team. Countless times they gave me invaluable advice for setting up a real time messaging system and ways to optimize it.

If you decide to use Bridge, rest assured, you will be in good hands.

.

TLDR: This new service is magic. If you don't want to be charged per message and want full control over your messaging node, Bridge is at the cutting edge of cost structure + technology.

You sir have improved my life by a definite measurable amount. Instantly a fan. Very clever programming!

Some points:

- Great usage flow by having both keyboard shortcuts displayed. I would label each in a smaller font (i.e. "Take Screenshot By..." and "Paste Here With...") for less savvy users.

- Could you insert a preview after it finishes uploading? A quick visual check would rock.

- I would love you if you could picked a colorful name. The trouble with "clean" sterile names is the fact it is really difficult to remember compounded with the url hack. Animals work well.

- My favorite tool: http://www.domainhole.com/brainstormer/ Try using the word "snap" / "paste"

- Change the tagline to say something about pasting it directly. Your clear differentiating feature is the fact that uploading doesn't take a dialog. Something like "Instantly paste your screenshot"

- There's that momentary ecstasy going "Wow, this is amazing." Have Facebook like / Twitter share buttons available the moment people see their pictures appear. This is when the magician just completed the trick and people want to applause. That's your window to spread the word.

- Add a link to your blog! I had fun reading it. Much more interesting than just a twitter handle.

- Polish this site up some and spread the word. It's a very simple app but has incredible utility. It may take a day or two to polish but it'll provide a multiplier to the rate of spread. Good side projects can get legs of its own and help you later down the road.

P.S. Have you guys decided on a project yet?

The Next Microsoft 14 years ago

If this design makes you uneasy and go "But that's not Microsoft!", slap your gut and tell it to listen because that's just the branding talking. Take a step back and recognize that EVERY emotion you feel about Microsoft is arbitrary. Branding is just the mental handle we use to talk about the automatic emotions we get. That is the tough part about branding: it happens unconsciously. It is that surge of instantaneous feeling that bypasses logic.

Engineering brands is reprogramming everyone's gut reaction. Our "gut" reaction feels right by definition (a tautology) and everything else feels wrong. It is only with conscious thought can we fight it. We as web developers know the power of the "default". Imagine that! Being able to set everyone's default setting to a selection of your choosing is like a superpower.

.

Changing brand is always an ugly business. For example, think back in high school about the personal brand you exuded on campus.

One day, you decided to start dressing in jeans and wearing a motorcyclist black leather jacket everyday. You get comments like "But that's not you! Why are you trying to be someone else? Stop being a phony." It feels impossible that you'll ever be accepted as a badass motorcycle jockey. The next day, you drive an actual motorcycle to campus. People see you driving a motorcycle. In the coming weeks, you offer rides to select people. Those people now start raving about your motorcycle and how "cool" you are.

We revisit the same campus 3 years later and people can't imagine you not as a badass motorcycle guy. You might ask, "Did you know that I use to be a nerd?" They reply, "But that's impossible! There is NO way that's true."

.

Ask a teenager: "Did you know that Apple use to be a terrible company with mediocre computers, losing money and weeks from going out of business?"

Answer: "What? But that's impossible! I don't believe you."

.

For Microsoft to make a big change, it should be that big, sudden announcement of that branding change. It will appear unfamiliar, it will appear strange, they might even appear phony. That's when the process begins. In the coming weeks, Microsoft publicizes new products that incorporate their new paradigm. Sleek, minimal, digital, modern. They even snag a few early adopters that try out the new products. You start getting friends that rave about the new products.

It is during this process that you go from feeling that its impossible that Microsoft is cool, to feeling that it's inevitable that it's cool. That is the magic of branding: the ability to reprogram the gut to have one thing be absolutely right and have everything else feel wrong, unnatural or impossible.

NOTE: This comes from an earlier response, but I thought it would be relevant.

I've found the most fun I've had was when I was working on side projects while taking relevant courses. I ended up staying at MIT for all four years + an extra year for their 1 year EECS Masters program. After graduating, I got into the YC summer batch. While at school, I was working on a variety of different side projects. I purposely picked relevant subjects like Machine Learning / User Interface Design / Behavioral Psychology that seemed to fit into the project.

Not only did it help me understand the subjects better, it let me master a number of direct cross-applications into web products. It does wonders for your creativity when you are actively thinking about new products while being exposed to so many new techniques.

.

On the topic of dropping out, an aspect that gets underemphasized is how strong of an ideation muscle you have. The more you do it, the better ideas you come up with. School for me was an excuse to building new things while hanging around taking a few classes. As each year passed, I realized I got better and better ideas. Back then, the first few "promising" ideas that I came up seemed like game-changers that would transform the world. Now I realize if you are the kind of person who comes up with good ideas now, you'll come up with great ideas later on.

Use those years in college to train up your ideation muscle along with your implementation skills (web dev languages / backend management / mobile dev, etc.) During your final year, apply to incubators using your uber product development skillset and amaze everyone. Not only will you no longer have the temptation to return to school, you will be putting yourself up for review when you are strongest.

At first glance, I thought it was just another email collection page.

If the call to action was instead "Try it now," I would get the impression I could satisfy my curiosity immediately.