Wednesday, December 31, 2014

Globloc social media company idea

Found myself thinking a few hours ago about how many social media companies I use, and then started wondering what kind of social media company I might create, and then brainstormed for an hour or so and decided, why not do a post? So here are some quick thoughts on a framework for a social media company built on a global-local focus, which I call Globloc for short. So I'm just idly speculating and tossing something out to finish out the year, so criticism of it is boring. Just going to start typing now and worry about editing it later.

There is an oddity to social media to me in that it's not like when you pick up a phone as you can assume some social media company has to receive your data but Globloc would give you a key certificate, allowing you to connect to other Globloc clients on other people's computing devices. Then information, including files, would be shared by bittorrent.

Globloc would maintain a global list of users though, but wouldn't care what people shared privately, unless law enforcement came knocking of course. But even then Globloc wouldn't have any information about what was shared, only whether or not a user was valid on the system, oh and be able to offer de-encryption keys, but getting ahead of myself.

Globloc users would, could share with an expectation of privacy, like phone users already have, so nothing new in that sense, and shared data would be encrypted on their device's storage, using what I call DMESE as I may as well use my ideas, in a Possibly Public space. But you'd only have the full thing, like a picture, if requested, as otherwise you'd get a digest version in the stream.

So digest version would be by default. If you, say, clicked on something interesting to you, the request would go to the device of the originator which would serve it to you by bittorrent. Then if the originator had given permission you could save to your device, in case you wanted to see it later, but it would be encrypted. To leave the Globloc system, the item would have to be tagged as exportable, and you'd have to export, like to get a JPEG file if it were a picture. That would trigger a log back to the originator as an exceptional use. Favoriting the item or simply viewing it would not, as considered expected--as putting it out there in the digest you expect people to look at it.

Oh yeah, so clearing a lot of privacy concerns with these notions. People could share with a private network on the local aspect of the Globloc system, and even then some information wouldn't automatically be shared, while giving maximum flexibility, so like they wouldn't have to keep serving the same data over and over again if they wanted to let their friends store locally. But even then it's encrypted, and they get notified if the data is exported out.

Globally people could publish to the Globloc public stream, which is where it looks like other social media companies, except I'd give the option of follow without broadcast, where you can get public posts from anyone public without giving out who you are. Or follow broadcast, where you'd be seen as a follower. But there would be a count of you if you followed without broadcast, so that user might have a million followers, but only twenty thousand broadcast their identity.

The data meant to be broadcast public would be kept on Globloc servers. Everything else is being traded by users locally. So that's the global-local characteristic.

Even locally though the Globloc app would imprint requesting user information on data which I call IDDI in various ways, including ways on photographs meant to be invisible to users but detectable by machines.

Oh yeah, almost forgot--system would try to eliminate use of passwords, and at least between Globloc globally and the local client would use one of my favorite ideas. Hmmm...looks like I never named that idea. But that's where the key server would come into things, which is what would keep up with the user key certificates.

So Globloc could yank your keys, eliminating your ability to talk to other Globloc clients, if you did something really bad, like violating the rules or something.

And I'm starting to run out here...hmmm...seem to think there were some other things when I was brainstorming earlier, but maybe I lost them. That's the trouble if you don't write things down.

Oh yeah! Not thinking a lot about legal things. This idea is free and open source and I make no pretension of having even begun to handle legal issues. The "Globloc" mentioned above is a hypothetical notion for a possible company which someone may or may not implement in the future.

If you like these ideas, steal them!!! I don't care.

Actually, it wouldn't really be stealing as I'm giving them away.

But regardless I might conceivably build this company myself, if I could get some help. There is SO MUCH left that would have to be done, like designing the user interface, actually implementing concrete examples of things quickly mentioned here which could be major coding challenges. And people would have to go for it.

Why might they?

Well I like the idea of not just assuming some company is looking over everything I send, with the same expectation as with a phone call, which is how I grew up. And I like local encryption protecting the data from being illegally shared, as well as the methods to catch people if they share without permission.

And I like the idea of having most of the data shared locally so the company at the top level deals has far less data than social media companies today, which also could protect from, um, certain folks pushing national security down your throat as they routinely raid, hack or otherwise try to get inside your tech company so they can SPY all, ranting now.

Maybe I should stop there. Wonder if I'll keep this thing up! Wonder if I'll post it. Yeah, I'll post it. Going to post now.

And coming back, found I did limited editing, as kind of intrigued at this thing being mostly a stream of ideas as more of just a brainstorm post without me worrying about making it pretty. Maybe will think later tomorrow, but that's another year. Time to push away from the keyboard. To next year.

James Harris

Thursday, December 25, 2014

Separating private from potentially public

With privacy so big in the news as a coder I've been in the past worried about the lack of a clear demarcation line, like on a personal computer as that's what's most familiar to me, between information that is potentially public and that which is locked from the web. For instance in the past I've coded applications that have full disk access, and I'm like, why?

So I'm not as sure about what's going on currently, though I'm talking about it as something that I need to figure out for current ideas, and talking things out is what I do, so sorry if things are better now, but no, very glad if things are better now. And this post is going to be simple concepts, like think about how most people go into their own homes.

You know, you unlock the door, walk into it, close the door and have what's called an expectation of privacy.

Contrast with a computer application you downloaded, opened the door one could say, and that thing is now like a best friend who can walk into your house, go into the fridge and drink some of your milk, but why?

Why not have a public area, like a front yard, where the apps can go? Or maybe even a living room, but get really suspicious if they start rummaging through your bedroom, metaphorically.

The clearest demarcation would be private versus potentially public, where people could have data that their system would refuse to share to the web. So to share that data they'd have to move it out of the Private Area to the Potentially Public Area. Then their system is like their home. It has boundaries, and for people to see into their home, they have to break through those boundaries but it's not just open.

How restrictive would that be? For lots of apps, not at all. Like if you have music, and apps that handle music, would they care if your music is in the Potentially Public Area? Nope. Would you have music in the Private Area? Sure, if for instance you were a musician, or someone who likes to sing for their own amusement and would be horrified if that were shared, but those apps don't need that information either.

The home analogy is a good one I think, as on your personal computer it is like a part of your home. For a company, you can simply shift the analogy, like you can have a lobby and these aren't complicated ideas and I'm sure I'm not the only person who has had them, but am talking some thing out.

Actually posted on this subject April of this year. Here's the link for the curious:

Why not a Java sandbox?

There I was grousing a bit on the security side, as I think that you can do app security in a completely different way if an app knows it only can access certain data, like only your music files in your Potentially Public Area, adding in that idea. Then app security is trivial for the developer.

It's such a natural kind of thing that I wonder why computer operating systems were built the way they were, but suspect that long, long ago in a time far, far away when operating systems were being built there were other issues that were major concerns.

Enough for now, as I can edit later. Ok, will edit later, that's just about guaranteed.

James Harris

Monday, December 22, 2014

My sum of squares discovery

Found a number theory iterator for quadratic Diophantine equations. It lets you find nonzero x and y, such that for an integer n equal to 0 or higher, and an integer m equal to 3 or higher:

x2 + (m-1)y2 = mn+1


Here I have m raised to n+1 so n is a count of iterations.

Gave it a kind of funky name as wanted something cool, so decided to call it a Binary Quadratic Diophantine iterator, or BDQ iterator for short. And it's remarkably easy:

u2 + (m - 1)v2 = F

then it must also be true that

(u - (m - 1)v)2 + (m - 1)(u + v)2 = m*F

So if you start the iterator with u = v = 1, or u = v = -1, then F = m.

So, like if m - 1 is a square you have a sum of squares equal to this integer raised to the nth power. And the first case is with m = 5, so here's an example:

Start is:

12 + 4*12 = 5

then it must also be true that

(-3)2 + 4(2)2 = 25 = 52

Next iteration: (-11)2 + 4(-1)2 = 125 = 53

And third iteration: (-7)2 + 4(-12)2 = 625 = 54

Fourth iteration: (41)2 + 4(-19)2 = 3125 = 55

Fifth iteration: (117)2 + 4(22)2 = 15625 = 56

Sixth iteration: (29)2 + 4(139)2 = 78125 = 57

Oh yeah, so of course 4 can be pulled into the square. I keep it out to do the iterations, as in each case I'm getting each iteration by just going back to:

(u - 4v)2 + 4(u + v)2 = 5*F

So for instance at the fifth iteration u = 117, v = 22, and F = 56, and you plug those in and get the sixth one.

Pulling the 4 in with the fifth gives:

(117)2 + (44)2 = 15625 = 56

Gives you something to do if you're bored, and like playing with numbers. Or hey, I guess could be useful as a way to test out a math processor. Who knows. I LOVE finding these kinds of things for some reason. Helps keep the mind sharp, you know?

James Harris

Thursday, December 18, 2014

Content providers are the rare bunch

A lot of times now I tell myself we're in the primitive days of the web, which makes me feel better. Lots of lessons are being learned, like who could forget the notion that NO ONE would pay for music any more now that digital copying had arrived? The talk then was that music artists should just give up and make their money from other means which lead to the idea of the 360 deal.

And the people saying that paying for music would go away were quite serious. And part of the primitive web beginnings.

I think some people just like the idea of everything being free because they don't provide content. And I think as time goes on, it will become clear that content providers are rare.

That was a point I tried to make to Twitter, when I gave them some advice. Whether they took it or not isn't a concern of mine as I can give advice here as it's my blog.

But I'm going to use the current growth of Instagram to try and make the point stick.

And I am on Instagram where I have 13 posts, 17 followers and I'm following 27.

Yet that account, considering hits I get from elsewhere, probably has viewers from over 50 countries. I wonder if Instagram puzzles why.

Starting the account was about having a place to put certain types of photos where I expect there will be more later, while there are some there now, like bumping into a star WNBA player.

Here's a photo from it:

A photo posted by James Harris (@jstevh) on

And am quite happy with the account, and gratified that Instagram doesn't bug me the way Twitter does.

They don't suggest users that I've noticed. If they do and I missed it, sorry. They don't ask for access to my email so they can find more people to try and join my network. Does Twitter do that or am I mixing them up with LinkedIn?

Actually Instagram hasn't bugged me at all as far as I've noticed, and yet Twitter might notice the company is still growing users! What gives?

Gasp. Could it be that techniques Twitter is using might do little to grow their user base and more to irritate their current users?

Why can't I turn off suggested users? Or limit its frequency? Why does Twitter keep trying to force Twitter accounts on me?

Those could just be personal gripes, ok, those ARE personal gripes, but I can compare across social media companies, and it's not like they all do it, though most do. Why not give loyal users a little more control?

Not currently posting photos on Instagram means I'm mostly looking at the photos of others which I tend to do daily. And I'm enjoying it too! Down the line I'm sure I'll be taking my own pictures again, but right now I'm not producing content but instead am enjoying the content provided by others.

The next wave through social media will be accepting that most people do not provide content.

And even when they do they do so rarely, while a few people provide the bulk of the content, and fewer still provide the highest quality content that draws the greatest attention from others.

And YouTube has these principles accepted while it has other problems.

So yeah, in my earlier advice to Twitter I brought up YouTube and here I talk a lot about Instagram.

But the principles are still the same, and I don't know Instagram stats. And I could be wrong but I doubt it because content is hard. That's why art people go to art schools. It's why singers tend to take singing lessons. After millennia of effort human beings are kind of good at the content thing, so the people who are best at it tend to be dedicated--many having started as small children.

You want to be a pop star someday? Then it helps if you were singing in front of a crowd at the age of 6.

(Though of course there are plenty of exceptions like Danielle Bradbery.)

If you weren't, then you have a LOT of catching up to do, and most people don't bother. Most people don't want to be pop stars. It's so much more fun enjoying the best from the best who have practiced to get there.

But social media companies today act like everyone wants to be--or should want to be--the next big web star, with millions of followers. Do you realize that millions of followers have high expectations?

Why would most people want millions of followers anywhere if they understood the work involved? The standards necessary to be one of the best in the world? You need serious training, effort, and practice, practice, practice.

Can everyone live up to such standards? Nope. Most people won't even try.

As the web matures and social media companies learn hard lessons, then our world will get more efficient, and maybe growing social media companies will be a lot better about how to grow.

James Harris

Monday, December 01, 2014

Ideas as attention engines

Coming up with ideas is fun, as I love ideas. I also like tossing an idea out here on the web. The potential then is that you can draw a good bit of attention, so I like to say: ideas can be attention engines.

But to me that opinion calls for a demonstration.

And one of my more recent ideas is SO simple and basic it seems like it would be fun to give myself permission to just run wild with speculations. So I gave away a completely free and open source idea which is to use shared images to help in validating guests, for some kind of event like a party. At its simplest, it's just that: someone shows up at the door brings out their smartphone, opens the app, and taps the screen and it shows the correct image, validating them. It is in essence an image invitation, or an image ticket.

I don't know if there are any apps out there doing that and I came up with it just idly thinking about wedding crashers and ways to make that harder. It's so basic I don't take it too seriously and with no intentions of developing it myself, it gives me what I like to call a throwaway idea where I can just have fun. And no, would not care if somehow this is a valuable business idea and someone made a billion dollars with it, and gave me none, as they would owe me none. That gives me complete freedom to run wild with some speculative analysis. Play at a business case.

Which is the point of this post. So point of disclaimers is: free and open source idea, I consider it a give-away, it's so basic I don't think it should be charged for anyway, and now I'm going to play with speculations.

Ok, so with images you have automatically out of the box that this approach has international potential. It's a very basic approach, so limited explanation, and the transaction value is highly specific which I like. So yes, anyone can share images to potential guests but an app can block that sharing so only people you list get the image, allow a professional feel, and monitor as guests arrive so you have a constantly updated list of guests onsite. And that's just what comes to me just kind of freethinking it.

With a potential customer, who has friends willing to have the app on their smartphones, a purchase decision, where let's say $1 US for an event of one hundred or fewer guests just to throw out numbers, would involve convenience, security, and trust. The value of the transaction is in giving a convenient tool that allows guests to have a "ticket" to the event with minimum fuss or hastle.

Pricing is about value to the customer. So, for instance at 500 guests you could have a higher price point not necessarily because the app would work that much harder, but because of the accepted benefit for the customer, so it's pricing on security, professionalism, ease of use and benefit to guests and host.

And pricing would vary by so many ways as it's about the value to the host! So shifting to Tokyo which is another premium level international city, price points could vary based on how valuable people in the city see this type of security for an event.

At the transaction level it would be a lot about what value a host sees in the service and pricing at that value which could be much higher than costs. But it's like singing, how much really is it for that person to belt out a song? But how much does the value shift? Quite a lot depending on who is singing and what, and where.

Oh yeah, images as I brainstorm here, could be very high profile at higher price points, like even designers or artists? Willing to allow use of their images for the promotional value? That could be a prestige point as well for an event.

At the highest level price points, you could link to even more security services, or a security firm might have such an app as part of its service, allowing it to control access to the event, and easily check guests. They just bring out their smartphone and you have an image to consider.

Visual images communicate well, and cross language barriers.

For instance here's one of my favorite photos of San Francisco.

It would also not hamper the visually impaired as though they might not see the image themselves, the point is for others checking the guests, so they could still use the app. App could have features designed to ease their use of it, like auditory aids.

It would be harder to bluff your way into an event, if it was clear that you should have the required app on your smartphone though someone might say they lost it, but then they'd be shifted over to a higher level of scrutiny to validate, and wouldn't make it past the first person at the door, who wouldn't have to think at all, just check an image.

In terms of potential market I think automatically of New York City as a premiere top level city, and the potential market is every event in the city during some particular time. And price points can vary based on host easily. At the bottom level price point you could have a basic image and the app priced to move, like at the $1 per event level mentioned. At higher levels you might have $10 per event for added security. And at premium levels you could use your imagination, including high level art images, and linkage with onsite physical security or even concierge services.

Fun exercise so far. These are the kinds of things I do. Sit around and muse about all kinds of things, and what I like is just putting something out there with an actual idea because it is fun to speculate with something that could actually be done by someone. I'm kind of wondering if something like this thing is already out there, and if not, why not?

Images are cool. They travel well. Using shared images as a security feature is easily explained. Hardest thing might be getting everyone to download an app to their smartphones, but that app would be free, and people have all kinds of apps now.

Gonna toss these speculations up, and maybe fiddle with this thing on an ongoing basis. I like posting things and editing which is a process that can take days or weeks or even longer--as I write it, so I can change it.

Will give me time to consider if I covered everything that I wish to ponder. Oh yeah, so the fun to me with this idea is that it IS given away so I can just run wild with speculations. I think the concept of using shared images is so basic that it would seem silly to patent something or whatever but that's just my personal feeling where others do not have to agree.

To me it's like a great basic potential community tool that can help facilitate greater community: just giving to the world this possible path to helping secure events, like say, weddings from things like wedding crashers.

And it's fun to put out some of my process. For me there's this giddy excitement in doing this kind of thing. Where I'm someone who just enjoys playing around with ideas--and throwing them out there. It can be a very messy process too! So if all the above just sounds wacky, I don't care. I'm having fun.

So how much attention can an idea like this draw? Well it can go wherever the web goes.

I try to monitor ideas as best I can, and one way is with search!

To see what results with your own search with this one you might try: guest validate app

Or: guest validate idea

James Harris

Monday, October 27, 2014

Free app as a service gateway

When I came up with an app idea for a way to make sure people showing up for an event, like a party or wedding, were invited, I stuck in a revenue stream automatically--the app would be free to get, but would charge to help you host for an event.

Thinking that through I thought of areas where that's obvious, like if you have an app for car service. There are some out there but will not give them free advertising by naming any. And obviously most people expect to pay if some stranger drives them somewhere.

But no one would want to buy an app for such a thing, I would think.

Someone might figure out some way to charge for such an app, but for business ideas that occur to me that would be silly. The money is to be made at the point of transaction, like, getting a ride.

Imagine instead someone hollered that all rides should be free!!! And pushed for an industry standard that free apps should involve free car rides.

And they could call it: Free-ider!

And claim they'd revolutionized human society, like imagine! A world, where everyone can get a free car ride! Can you see it? Then everyone could ride, right?

Well, of course no.

They could declare that people want to ride for free. Yup. Duh. Plenty of people would like to TAKE a free ride, but how many people would really like to give one?

To me there are notions that involve giving away human effort, where it's easy to SEE that with a car ride. It can be harder when you discuss things more abstract, like writing a novel, music, code, or taking a photograph.

There is an intrinsic community value though in giving things away. And it feels good. But it is a gift, claiming otherwise is disingenuous.

So I think there is a great community aspect to the web, which in many ways is the biggest community ever, where people do happily give free rides, both literally and figuratively. That's a great thing which really helps build a more communal world because the web allows for a free flow around the globe for the greater benefit of us all. But that shouldn't be forced upon everyone.

Human effort is not free. Whether a person who works at something is paid or not, she or he still worked at it. Not paying someone for their work is not some revolution in human thought.

Transactions are the point at which money is to be made. Apps can be a gateway to a transaction, so do not necessarily need to be purchased and I suggest that the dominate business model within the app space will become apps as service gateways.

And of course the transaction side should be upfront. It's easy with a car service, but for other areas it might not be as intuitive so should be clearly stated well before anyone has the app, as I've talked at length about how much I dislike what I call stealth transactions.

But then again, to me that will make having the app make sense! You don't get an app for a car service puzzling about where they make money, now do you?

Soon I think apps will dominate where no one wonders how the business makes money, and it will have NOTHING to do with ads.

Using a car service as an example it's clear exactly how people can use the web and pay for a service, as people will pay for a desired service at the point of transaction. Naively one might think that if people could just steal the car they wouldn't pay, but that's the fantasy world. And if you believe that everyone can get free rides indefinitely then you're also in a fantasy.

The app can be the gateway to a service people pay to have. And for that reason I think most apps will be free.

James Harris

Saturday, October 25, 2014

Guest validate app idea

Started wondering to myself about how you might use smartphones to validate guests, and came up with an idea. And it's a free and open source idea.

The way this app idea would work is with it on your smartphone, and on the smartphones of all your friends or guests or whatever. It could be a free app, which only charges you if you use it for a wedding or a party or whatever your social event is.

So with this, um, let's call it Guest Validator app, you could send invites to a list of people, where I guess they would be contacts on your phone. They'd get the invite telling them the time and place of the event.

When they arrived at the event, they'd push a button on the app, like a button on the screen, and it'd show a randomly created color coded "ticket", which would be unique to that event. And would not show until they arrived either by time, or location or both, where the Guest Validator would check the web for the time or GPS for location, to keep people from doing sketchy things like changing the time on their phone.

Of course it could be any kind of image, including ones the host had taken. Like here's an opportunity to toss in a photo of mine:

So this unique ticket would show, to the surprise of the guest who wouldn't even know what it looked like until the event, and the host could just look at their own phone, which would show the same thing, and let the person in, and from then on, anyone valid would have the same ticket, for like five minutes.

For more security it could change every five minutes, until lock out, when it would lock to the last image.

Or the color could slowly shift minute by minute.

And for additional security, the image would only show for 2 to 5 seconds with each check. Quite long enough for most people to see what it is, and compare without it just sitting there.

(You can keep adding security layers depending on your level of paranoia.)

And yeah, security is what you'd be paying for if anyone ever implements this idea, as otherwise you could just email a photo to all your guests for them to show when they arrive. But what if they share that photo with someone you didn't invite?

If the host or anyone at the event wishes to check a guest they'd just ask them to show their smartphone and hit the button, and the app would show the image from when that guest arrived, validating them. But by then, everyone would have the full list of pictures so anyone at the party could validate anyone else, by matching their smartphone's image against the valid list of images.

(Oh yeah, need to make sure it's actually their smartphone of course, if you get suspicious.)

The host would also be able to see which guests are checked off in the full list of invitees.

And that's it.

I like it because it's visual. Also it allows anyone at the event to check guests, so it allows you to in a sense crowd-source to some extent. Say, people know whomever is near the door would app validate people who are just arriving.

It'd be really hard to counterfeit a "ticket", as images change for a while, and also it has the backup that based on the image you know roughly when a guest arrived.

And that's just a quick throw-out-there idea for me. I don't like investing too much time in these things. Have them a lot. So not worth it to think it out too much.

Oh yeah, I have no idea if such a thing already exists. Did a real quick search and didn't see anything which doesn't mean it's not out there, but at least I do try.

James Harris

Monday, October 06, 2014

Prime counting benchmark

One of those activities certain students may be asked to do is write a prime number counting program.

I've talked about my own simple prime counter often enough but thought I'd give a result from a more advanced algorithm I developed from it, using this applet I built to demonstrate my research. Took the relevant portion from a screenshot I did today for this post:

That is the count of primes up to 1010 and it took a bit over a quarter of a second, which is slow.

But it was my research so I felt it was solid for just coming from some guy who isn't even a mathematician.

If your code isn't close to that speed you're not even trying yet.

The basic prime counter isn't that fast, but you can optimize it easily. I wish I still had the source code. Lost it. I had something I called which is in the applet, but I only have the .class files, and lost the Java files.

I lose TONS of things. Just don't care. Luckily I throw a lot of things up on the web as otherwise it's just gone. One guy had an even more optimized version of my code up on the web, but I don't know if it's still up, where he'd sped it up greatly.

In any event, counting primes is one of those things where lots of people do it, so there's lots of tables around to verify your counts. And it might help to have some perspective on how fast your counter should be.

James Harris

Sunday, September 28, 2014

Some thoughts on test drives

Back in the 1990's I sold new cars for two months. Worked at a major dealership that sold for one of the major Japanese carmakers in the Atlanta metro area. (Kind of funny NOT to give out free advertising for any of those parties by giving names.) And one of the more fascinating things when selling new cars is the test drive.

Consider, you go to a car dealership in the United States, talk to some person doing sales, and if you like a vehicle, they may let you drive it around for a while! And I say may as don't take test drives for granted, like if you go to a Ferrari dealership--had to give them free advertising for it to make sense, like it matters.

If you go to a top of the line dealership for a very expensive vehicle they may want to make sure you can pay for it first, if you decide you want it. I remember when I was in San Francisco there was this bus stop in front of a luxury car dealership. And I'd stare in the window at these high priced cars with price tags well into the hundred thousand dollars US. But I digress.

Now then, people who come to a dealership know what an automobile is, right? They've probably driven one many times as we weren't in the business of giving driving lessons. So why do they need to drive a car to decide if they wish to buy it or not?

When you talk about letting people test out software, I have typically seen a limited version model, where you give someone something that can't do everything in the hopes that will be enough.

I liken it to having people take a test drive in a go-cart that looks a lot like the vehicle they want.

What I would like to be able to do as a developer is something I talked about in a prior post, where you let people take the equivalent of a real test drive, by just having the software on their system before they pay for it.

The idea is that a person downloads the software with a promise to pay only if they keep it, where they can use it for a while until they decide if it fits their needs or not, and then voluntarily delete it off, if it does not.

If they decide to keep it, then they'd be expected to pay at that time, which is what I call the Pay Back Value model.

So what's wrong with this idea?

Some might ask, who would pay for the software if they already had it on their systems and were being asked to voluntarily pay?

And the answer is: people who are not thieves.

The idea that all human beings are thieves is pervasive in the software industry. It may be one of the single most drivers of hostility between the tech industry and regular folks, especially when companies sue the crap out of as many people as they can get on a list.

I don't agree with the idea that most people are thieves.

And I actually sold cars for two whole months at a major dealership in Atlanta metro area! Trying to be a bit humorous there, but to me there is an awful lot of supposed knowledge about human buying behavior from people who have never sold anything at all.

Most human beings aren't thieves. Look in the mirror, would you steal everything you have if you could?

If the answer is yes, look around you at all the areas where people do not steal. And maybe grow a bit as a human being.

However, there are practical realities with this idea that may be missed. For instance, what about service and upgrades?

If a person downloads your software and never pays, what do you know if they call you later asking for help with the software?

You know they stole it.

When you do newer versions, and a person who had the original version but never pays tries to get the newer version where we'll assume there is a full installation and an upgrade where they pick the upgrade, then yup, you know they stole it.

You now can identify thieves, yet again with software.

Now if you never upgrade the software and people never need support, yeah, they can just walk way with it, but then again, do you really believe ALL human beings are thieves?

If you think all humans are thieves, I ask, what's wrong with you? And what turned you into such a cynical person?

One thing with software is you can develop something, give it away, and have billions of people using it, without making any money. But like with open source you gave it away. Like I've given away my Class Viewer app.

To get paid you need a transaction where people know upfront they are to pay for something!

And I worked it all out in a post for my own clarity. Before you think people stole something, you might want to learn the rules of transactions.

James Harris

Saturday, September 27, 2014

Image licensing validator?

Here's another free idea: some company that licenses images should offer a free app for people who want to know if images on a website they visit are licensed for use there.

One thing I find happening to me a LOT when I surf the web is coming across a website where I wonder if images are being used legally. That helps me to form an opinion about that site!

So from that perspective if I had a way to check then I'd appreciate it so I'd feel more confident about the site in general. So why don't companies like say Getty Images offer such an app?

Just checked at their site and if they have such an app I didn't see it.

My guess is some might wonder what would be the point with so much rampant and uncontrolled sharing of images. Well the point is more information about that website you're on. And there are people who care about such things.

But right now, how are we supposed to know? And why don't companies with that information figure out a way to share it where it matters? That actually can be a big deal, like when I'm debating whether or not to share a site. Right now I start a bit of detective work, trying to figure out from what information is available how decent the site is.

One of the things that really irritates me is when I have to notice later there is something wrong with some website I've shared, so I break the link. As the web matures I think it will be increasingly important to know which people are following the rules, and who are not.

James Harris

Tuesday, September 23, 2014

Problem with stealth transactions

Years ago I found myself contemplating an open source application I had been using. Had thought it was ok, not great, but ok, and now it was telling me that I should donate to the developers. I contemplated that for a bit, and then deleted it off my system.

Business is about transactions. I state that without worrying about justifying it and in an earlier post where I talk about what other people want I said:

Businesses try to find out what people want, and they don't just give it to you. They try to get transactions, where there is a buying decision made. Where it's agreed to ahead of time that you will get something, and then give some amount of money in return.
To me if you want money from me, let me know upfront. Don't wait until later and surprise me. I call leaning on people to make a buying decision later than normal an attempt at a stealth transaction.

I think it's sneaky.

One of the ideas I've considered as I continue my contemplation about money, is a stated social contract for users of my work or ideas. But essentially it'd say things like free is free. If I give an idea away, it's given. Don't worry about me coming back later to squeeze you for something.

Not that I haven't considered it at times. But it gives me a queasy feeling. Just doesn't feel right.

My own view with stealth transactions should be clear from my example above: is a great way for me to not do business with you.

Business should be upfront. If you want someone to buy something from you, let them know upfront. Don't try to obligate them and then squeeze them into some kind of contract after the fact.

Thinking out loud a bit. Wondering if I should talk more about a social contract, but then again, I don't think there is really one if people are just sharing things. It's like, here you go! Take it or leave it. I don't care.

And don't worry, not going to bug you about it later. Ah, such a relief. No social contract necessary.

James Harris

Monday, September 15, 2014

Building a Java 8 JavaDocs link

One of those features I definitely prize in my open source app for Java developers called Class Viewer is the ability to go to JavaDocs to the method. And for that to happen the app has to build the link for you, like here's an example that I just did with it:

And that works for Java 8, where you can see the '8' in the link, where that is in the base which is set in ClassViewerConfig.xml--where you can edit with a text editor so easy to make changes--and the app builds out the rest of the link where I picked a method from the String class for demonstration purposes:

static String format(Locale,String,Object[])

Putting in italics so it stands out. And with that as a reference you can see what the app has to do, which is just loop through that, which it gets from Java Reflections and is what it has after it strips off package information, and switch that to the format that was just implemented for getting to that method in JavaDocs.

So yeah, I kind of had a bit of a freak out a few months ago as I knew Java 8 was coming out and had changes but didn't really dig into them, which I guess was a mistake, as I made some changes to Class Viewer, and thought that was it, until I checked going to JavaDocs and it just didn't work! Then I realized there had been a change.

For the curious you can go to JavaDocs before Java 8 and see the old format. What I'll say is that I like this new format as it's MUCH easier to code, which is what matters to me.

Oh yeah, it had some quirky stuff and maybe I missed something so if anyone finds something PLEASE let me know, as like Object arrays go to Object..., but check out how other arrays are handled with this example:

And that's from:

static String copyValueOf(char[],int,int)

So you can see that here the char[] turns into char:A, which I noticed immediately and coded up, only to thankfully try something with an Object array and notice it didn't work! So yeah, not completely sure I got everything, but...well it works for everything I've tried.

One of the best things with this new approach is it really is more fun to code and removes issues with handling spaces, where if you wonder you can go back to earlier versions.

At first I was going to go to the newer version without support for older JavaDocs and realized that was silly since the app could just check your Java version, which it does from the System. So if you have an older version before Java 8, it will use the old way to get to JavaDocs.

James Harris

Saturday, September 13, 2014

Where trust lies

Have spent some time figuring out what I think money is, and found myself focusing on monetary transactions, which is where there is consideration given in exchange for a favor.

When you do someone a favor there is at best a certain amount of goodwill. For instance you don't want to do a favor for someone you don't like I would think.

One of those signs that would often fascinate me when I went into an establishment would say:

"We reserve the right to refuse service to anyone."

The trust side of an exchange has to do with quality. And now I'm finding myself in a better position to talk about quality, as if you do some people a favor, and they give you some consideration in return for that favor you are trusting them.

Society gives us the framework for the trust system that we call the monetary system, as all money is, is a promise to pay later for something that was already done. So like if you mow someone's lawn, giving them an immediate benefit, you get some items made from scrap paper in the US which tell you that later you'll get a return on that action. That money has no intrinsic value. It's just a promise to pay.

Having other people obligated to you definitely has value. And can have a vast impact on the quality of your life. And there is a great value in doing things for others, and gaining an obligation back to you in return.

Some people, unfortunately, can see profit in betraying your trust by giving you less in the exchange. If they can get you to do them a favor, and give you less of a favor in return, to them that's "just business", but it's actually just a trust betrayal. In the past that type of behavior could be harder to track, but today the web is making it ever easier to find it, and keep up with it.

That is causing a sea change across the United States and greatly impacting businesses at all levels.

It also impacts individuals and how we relate to each other, especially when there is a long record in the public.

One of those things I found I felt I needed to do were disclosures that I don't have paid endorsements. And if I ever get any, I would disclose it, because people don't want to think they're reading something because you just feel a certain way, when in reality someone is paying you to say something.

And government is trying to regulate so-called 'native advertising' like when someone says something in a blog post which is being done for payment of some kind.

Trust and quality go together. Some people you can trust to give you quality because that's who they are. Doing quality work is a source of pride, and part of self-worth for them. They wouldn't betray your trust because you're not worth losing something of such value. And questioning them on the quality of their work can bring justified anger.

Businesses can be at the mercy of trust betrayers who come in for quick profits--shredding customer loyalty.

I think we're entering a new phase on the web which is the trust phase. As quality becomes more important to consumers and information about businesses becomes ever more accessible, as well as real life customer experience, it will be harder to betray people's trust and get away with it.

The best businesses can do an equal exchange--give equal value for value.

Maybe we'll see a reversal on that phrase "it's just business" in a world where that comes to mean you wouldn't betray the other person's trust because you know in business you can't get away with it.

There are many ways where people today have found their trust lay with the wrong people or institutions. And there have been HUGE consequences across the economic landscape. People without jobs. Struggling to find another, like me, where the biggest issue isn't ability. It's trust.

Quality matters. Where you get your money matters. How you got your money increasingly will matter in a world where people understand ever more the consequences of putting your trust in the wrong people.

Sitting at home trying to figure out how to pay your bills while reading about wealthy people in the news partying on ill-gotten gains is not what one would call fun.

But the good news is you can find value out there. And being skeptical, checking your sources, and figuring out which people to trust over time can lead to a great deal of personal satisfaction.

At our best we want to give at least as much as we get, and maybe more.

That some people are parasitic, hoping to suck more from others than they give in return, does not change the base reality that has given us human civilization and a world with lots of cool things.

Like computers that let us talk to each other like never before, share our point of view, and best of all, get that of others.

Earn your trust. And learn your trust. But never, ever take it for granted.

One of the things that's interesting to me, after reading what I wrote here a few times is the sense I have a better position when dealing with someone who thinks it's ok to emphasize being rich as if I care. It's like, they're saying: a lot of people owe me something so you should think I matter.

And I'm like, ok, so a bunch of people have an obligation to you according to some paper, so?

Reality is that even if you've done a bunch of favors for people so that they feel obligated to you, showing someone else a bunch of paper as if that obligation is what matters tells them you think people being obligated to you is important.

But if you do favors for people just to get them to feel obligated to you, and save up the return on those favors to hold that over their heads later, what really are they likely to think of you?

James Harris

Saturday, September 06, 2014

Class Viewer problem space

One of my posts covered my ideas about innovation and the problem space, which I see as the thing your application is handling. Wanted to have a post where I could quickly see what I thought the problem space was for my open source application Class Viewer, so copying from that post to put here:

Original Class Viewer problem space: how to get class information quickly, about public methods, fields, constructors and get to Javadocs.

And the reason to have that readily available is so I can evaluate where I think product direction should go, and maybe see if I want to expand that, which I think I have. So I'm going to update it.

Possible Class Viewer problem space: how to get class information quickly, about public methods, fields, constructors and get to Javadocs, open a Java file, and get basic system information like classpath and Java version. Works as a tireless assistant.

One of the things that's interesting to me is, did I really need to expand from the original problem space?

Turns out I felt that there was more information a developer readily needs, like classpath, where sometimes you do something and wonder, and Class Viewer gives a quick way to check. Same thing happens with the Java version, where I find I'd wonder while doing something, and now it's easy to check.

I'd prefer to not necessarily have all those things in there. And just went back to add the "tireless assistant" part which allows me to imagine a LOT more development paths.

So that's kind of important. Seeing Class Viewer in a more narrow way for the last decade worked out great and allowed me to do very few product iterations. But at times I've wondered if I wanted to do more. Then again, I could just create an entirely new product and leave the current one alone. However, so far it looks like things are in the same direction. But maybe it's too open ended now? How do I bound the space back to something more realistic? After all, it's unlikely that I'll do tons of new development though with that problem space I could go wild.

Class Viewer problem space: how to get well presented class information quickly, including getting to Javadocs, and other relevant information important for development that is available, like classpath, as well as open a Java file if possible, quickly. Using third party tools if available.

That might be more like what's been done and now I'm seeing a focus on quick access, presentation, and using other applications to do things. Back to a more narrow focus, so losing the "tireless assistant" thing.

Maybe I'll fiddle with all of these things later, but for now gives me something to think over.

James Harris

Starting Class Viewer with a class

One of the features now working with the current Class Viewer is the option to start with a class.

For instance the following will open Class Viewer with the String class:

java com.jstevh.viewer.ClassViewer String

The way that works is like if you typed that in yourself, so if it can't find the class you give Class Viewer will simply give you the same message it would give if you typed that in yourself.

One of the things I'd guess this option can allow you to do is push what you want on screens in a classroom. Or if you wish to start with a script, which I guess you could also do in a classroom.

Thursday, September 04, 2014

Our information

The web is an information zone, and more so than at any other time in human history, information can flow rapidly all over the globe. We all need to take published instances of security breaches very seriously as they give us a warning, and chance to work harder as it becomes ever more clear what our new reality truly represents.

There is a vast amount of information collected about many of us on a daily basis for many reasons, and private information should remain private no matter who it is. And for people confident they never put anything out there, how do you really know? Increasingly data is being stored about all of us, including very private information. And not always by choice, as in cases where people have exploited their positions like a recent infamous case of a doctor illegally taking pictures of patients.

The web has democratized lots of things, and those who look at celebrities as if distant cases from their own lives need to realize they're in the same boat. The only difference with a famous person is the possible levels of attention.

Security services of both the United States and the UK have reportedly been involved in victimizing people in their homes by spying on them through their computers.

It's not enough to think you're not putting private images of yourself online. Someone else may do it to you.

Theft of private information should not be looked at as a joke, or the fault of the victim any more than if anyone breaks into your house and steals something. Expectations of privacy have to be enforced for the information security of all of us.

The world has changed. As exciting as it may be to look at some seemingly distant figure dealing with information theft, there should be a local concern as you may be a victim as well without even knowing about it.

As someone watching the news I know my opinion of recent people who had private information stolen and tossed out there has not changed. They simply faced a theft. In our world information has become a thing along with all our other possessions and like them, something others may steal.

None of them were at fault. And if you think you're safe, then you're not paying attention.

James Harris

Friday, August 29, 2014

What other people want

To me the best thing about figuring out money is making it all so obvious there is no area of misunderstanding, especially as to why to have it or how not to be silly to not want a lot of it. And yeah that goes back to how I was raised where I have this silly embarrassment at not wanting to get rich, as if not wanting means there's something wrong with me.

But defining money helps me to see it's a lot about providing something that other people want.

Earning money involves a process: First you need to figure out what they want. Let them know you can give it. They have to then let you know they want it. Then you need to figure out some kind of contract between parties. There has to be a buying decision where they agree to the contract, which is often unwritten, but may not be. If it's written you both have to sign it. And then you deliver the desired product or service in a timely manner. And get paid. Or you may get all or some payment upfront before delivery.

There are plenty of things where I'm not the slightest bit interested in that entire process. And lots of things I like to do just because they're fun.

It's like how I'll give free advice to companies and don't like giving advice to a human being. I prefer mega-corporations or huge business sectors so I don't take it too seriously. I figure that way if someone actually listens to me then I don't have to feel guilty if it doesn't work out.

But another human? I'd be too worried about telling something wrong. What if you screw up a life? Don't need that kind of responsibility. Hard enough taking care of my own.

Doing things because other people want you to do those things is a service. And I think providing services on-demand is often a great asset to the social reality. I know there are plenty of services I like and need. Like, going to the grocery store. It's nice for it to be there. And great for there to be people there ready to help you, and take your money when you buy things you need like food. I've worked in grocery stores before so been one of those people.

It is a bit strange to think though that across the board where ever there is an exchange of money for products or services it's really all the same essential thing.

Businesses try to find out what people want, and they don't just give it to you. They try to get transactions, where there is a buying decision made. Where it's agreed to ahead of time that you will get something, and then give some amount of money in return.

Transactions fascinate me in the abstract. I'm still studying the concept.

Regardless, some people have an innate adeptness at working to create transactions where they supply what people want in exchange for money. Money is actually a symbol of a debt to be repaid which is weird. From the idea perspective, money is not actually the debt paid--though many see it that way--but a promise from society that you will get something for your effort.

Money has no meaning without a society to support it.

It is an IOU from your community, whether that's local or global.

And your community doesn't have to recognize it. Money represents debts owed between parties recognized by society because that facilitates its own needs. Otherwise it can simply direct you back to that party to have the service debt repaid.

Like imagine you work all day on some hard and dirty job for someone and they pay you $500 US for your hard days work. That money does not actually give you an immediate return on all that effort but is a promise of a return later from your society. Now let's say as you walk out the door with that money in hand, society collapses, and all your money is suddenly worthless.

To some it might seem that's it. Your efforts just were for nothing. But actually that person you just did something for, can shrug and hand you something else, or come work for you for a bit to pay you back.

You see, it really is about two parties. Money is just an abstraction. The reality is people doing things for each other. Society facilitates that for its own needs.

Your community does not have to recognize money if it so chose, but thankfully it usually does! Or our social world could not exist in its current form.

So much can get lost in the abstraction of money which is why it's worth it to figure out what it actually is, and then maybe figure out what you can do for others.

And what you think you should have in return.

James Harris

Monday, August 25, 2014

Valuing knowledge and money

To me money was a big enough issue that I sat down and pondered it until I could come up with my own theory of money. If you click on the link and read you'll soon notice the post includes lots of disclaimers! Money is such a big deal, but for me figuring it out was a practical necessity. I was having trouble figuring out things related to money, didn't see anything out there that explained it well enough for me, so I sat down and figured it out on my own.

The gist of it is relating money to favors by asserting it abstracts and enumerates the value of a favor. So like you can ask a friend for a cup of coffee at his house. Maybe later you give him a snack at yours, returning the favor which most people kind of do with a vague sense of who is up or down with favors. Or you go to a coffee shop and you just pay a certain amount for the favor of someone making you a cup of coffee. That person does you a service. Money allows us to price out favors so strangers can do them for us, and we don't have to worry about some other form of reciprocation.

If you have a friend who doesn't return favors, or rarely does that can bring up social friction. Turns out that people can get a vague sense that they're not getting value for their money which in the big wide world is about information: who has it and who doesn't.

My favorite example goes back over a decade when I decided to build a pc for myself to save money. Got the case, motherboard and other items, put it together but needed an operating system. Went to a local computer store--not a big chain--told the guy at the counter what I was doing and asked him for MS DOS as I needed an operating system. He did me a huge favor and instead suggested I use DR DOS. I was like, huh? What's that?

And it was before the emergence of Microsoft Windows 3.1 which gives you the timeline and the guy at the sales desk informed me it could run all the programs I wanted to run with MS DOS but was MUCH cheaper.

So I bought it. Built my pc and got it running just fine and found he was right, and it suited my needs, but notice that I paid less for my operating system, and I've pondered that ever since. And I've remained fascinated with operating systems, including promoting the idea of a Browser Operating System which I designated the BOS.

I now firmly believe that most people have NO IDEA what their operating system costs them in a modern computing device, even when it's free, which it is with Android. That price tends to be buried into the full price of the device.

You need to be an insider or curious in this area to understand where that little bit of info--consider it's just a number that could be listed with the price of a computer--has taken the entire world.

For a while I decided that the much vaunted American consumers were stupid, but then I realized: they were simply not given the information.

With my own theory of money I can now explain everything related to money around the globe. I can even explain the wage gap where people are howling about the top 1% making so much more, and yup, it's about information. I've concluded many American workers have no clue how much they should be paid.

The web is helping though. Even though companies fight so vigorously against that information spreading.

Ever wonder what is the best explanation for why companies don't want employees to share what their salary is?

Now you know. It's so they can keep salaries lower.

Duh. What else could it have been?

James Harris

Friday, August 22, 2014

Another development model?

Was laying around thinking to myself about why I feel uncomfortable at software companies, and started fantasizing about other ways to get paid to code, like that emphasize the value of your code. After a while I thought to myself: why not just blab about it in public? I do have a blog.

So here is some of that fantasy where the start is an End User License Agreement aka EULA that allows you to have people take use of your code ahead of payment in order to see if they want it. If they want it then they'd be expected to pay up otherwise you would assume they would voluntarily delete the code from their system, without checking.

That is, say this app existed. Some people go on the web, buy it without paying anything, and then can use the application for as long as they wish while they evaluate it. And you don't bug them. If they determine it is quality then they should hit a button and get charged. Otherwise you assume they will voluntarily delete off their system. And you will not bug them to make sure either.

That is going with concepts I call PBV for Pay Back Value which assumes people will tend to buy things once they see quality so you let them see it first and trust them.

Part of the fantasy is that the PBV EULA would cut down on litigation costs as you can say users had ample opportunity to fully comprehend what the app does and does not do, so how sue? (People will figure out a way though I guess.) Oh yeah, and would eliminate return costs.

Ok, with the PBV EULA imagine a coding project where developers build a software application and sell it, where each coder gets a percentage of sales based on how often their code is actually used when users are running the app.

So in this fantasy scenario, built into the application is a method for tallying when code lines are actually used by people doing things with the application and maybe it uploads a report monthly or something and on that basis, coders get paid a percentage. Like if your blocks of code are used 40% of the time, you get something around 40% though maybe a little less, as like maybe 5% is administrative, so you might get 40% of 90% assuming 10% other costs including administrative. And next month it might be 33% as other code is introduced or for some mysterious reason people are less heavily using features you coded.

So it would be a merit system: coders who code the most heavily used features would get paid the most.

And it could be an open source project as well. That could let people come into some project, maybe with some big ideas, code something really cool and get paid. And then get on with their lives without contracts, and coming to some freaking office. Or signing anything other than a minimal contractor agreement agreeing to the terms outlined above.

That's my fantasy.

Actually making it into reality would involve lawyers willing to write up the EULA. That's a major big deal as would be nice if someone would do it pro bono, as in free. For the industry.

Then you'd need some run metric on code blocks--oh and that idea is open source and now I wonder do any companies do it?

Seems like a fun idea to me: see what code of your developers is actually the workhorse in an application and pay them accordingly.

That would reward the best coders, reward the best features, and not reward the people who put in crazy wild stuff that simply confuses end users so much they never use the junk.

Ok, beginning to rant a bit, which means I should stop now. Just speculating. Things I do. I like to dream and speculate and wonder about things. And then I can share if I wish. As you see, it's my blog.

James Harris

Saturday, August 16, 2014

Functional certainty

Understanding certainty I think is one of those weird arenas where it seems certain upfront. Certainty is being sure of something, right? But how do we know? And to me it's not a minor issue as people will argue relentlessly over questions of certainty. Yet I've made a point of emphasizing that many people have vast amounts of practical certainty in their lives with predictive power. Like in my country they calmly go to a water faucet and pour a glass of water. Or do they? Some have had that certainty challenged unfortunately with problems with their water supply. Others have long since lost trust in the municipal water and prefer bottled water.

But what makes them so certain the bottled water is safe?

Functional definitions fascinate me as when I say a definition is functional then I mean you can DO something with it. And I've focused on the predictive power of science to explain it.

Remarkably science has given us massive amounts of predictive power which we use for certainty. Water is a great example as our ancestors could die from the wrong drink. Beer and wine could purify water to some extent with the alcohol killing off nasty organisms we now know. For our ancestors it was more mysterious.

But how many people understand the biology of bacteria? Can you even name a common bacterium which can infect water? People in countries where clean water is not so taken for granted probably can.

You don't need to be a biologist to understand your certainty, or lack of it, around the water available for you to drink

Focusing on predictive power, like being able to get a drink of water from the faucet or reliably flip a light switch, gives a functional approach to science and allows us to tell when something is scientific, or not. And that allows people who do not even understand a particular arena of scientific inquiry to so determine! Which is a really big deal. It means you can manage scientists with a functional framework based on prediction.

IN a prior post I explained how scientists are like adult babies so maybe they don't like how easily they can be managed which is why the predictive aspect of science is not normally emphasized. That expression is an oxymoron in that it can't literally be true, of course and is meant to be humorous. Scientists retain one could say the childlike wonder to know.

To many the word "science" is powerful but mysterious, and difficult to understand.

I aim to demystify it.

Knowing that science gives predictive power means that if a scientist is talking to you, you can ask her or him, what can she or he predict with a particular scientific theory. If you get frustration in response, then the person may NOT be doing science.

For example, a doctor learning splints can predictably set broken bones. A student getting her MBA can predictably set up a process for managing orders or something business, more on a limb there, as I know less about business. But if said student were in front of me I could quickly zero in on what she could do with her knowledge.

Forcing prediction is something you can take for granted, like a biologist might be able to tell you that some water is now safe to drink after boiling as deadly organisms have been killed off. Do you really care about that last? Or do you really focus on that "safe to drink"?

A physicist working on fusion power can predictably if the theory is achieved talk to engineers about how to predictably use fusion for electricity generation. But we don't have that ability yet. So we're at the limits of science. If you talk to someone who is doing fusion research, you don't need to know much to find the limits.

So managing scientists is easy: ask them to predict something.

If they refuse, they're not doing science.

But don't make the mistake of asking what you can DO with something. Then you will be caught in a trap. Generally it's a bad idea to ask a scientist what you can do with anything. They have speeches well prepared to make you feel like an idiot for asking such a thing.

Prediction is the thing.

Famously scientists during World War II were terrified of the implications of Einstein's theory that matter could be converted into energy and predicted correctly that we could predictably exploit such a thing into nuclear bombs. Without that prediction, why would the research project at Los Alamos have been done?

Why bother with this focus on prediction and science?

Because it forces those adult-babies called scientists to focus. It pushes a scientist into giving the parameters of success. And makes scientists see where the truth can be determined.

Otherwise you can have a very expensive group of people milling around doing all kinds of things telling you it's "basic research" when they're like babies playing with their toes. Why? Because it feels good, of course!

Managing a scientist I emphasize again is easy: ask him for a prediction. Ask her to tell you what predictive value does a particular hypothesis have.

Even if the answer seems nonsensical you can usually tell when that person is doing real research or is fumbling in the dark trying to figure out what the real scientific research looks like.

People may claim our world lacks certainty. In my country I can ask them something simple, like how certain are you that flipping that light switch will work? Or how certain are you your car will crank?

Or maybe simply ask, really worried that everything will just fall apart at any minute?

But I'm pragmatic that way. Oh yeah, if person answers that he or she is, then I can just walk away. Clearly that person is on a different planet than the one on which I'm typing these letters now with the comfortable certainty that soon people in other countries will be reading them. I like that odd feeling as for now I'm the only person in the world reading these words. But by the time you read them, well...I don't know. Less certain there.

James Harris


Want your own copy as PDF? If so can download from my public Google drive here.

Friday, August 08, 2014

Climate and bad news

People don't like bad news. When it comes to questions around our global climate and how news gets reported my simple assessment is that if it's bad news it tends to get moved to the fringe, rather than lead the news, not for some huge conspiratorial reason but because that's what's best for ratings.

Like consider recent news of giant holes opening up in Siberia. If you've heard of it, then it's probably because of initial news--people love novelty--widely reported, which I noticed. But why less follow-up?

I think it's because the news is bad. I'll link to an article which actually says that in the headline:

Siberian hole mystery: Scientists think they know the cause and it's bad news

And the news IS getting reported, as I can link to an article, but the follow-up should be BIG news, as it's about the possibility of releases of vast stores of methane, which is much more potent as a greenhouse gas than carbon dioxide.

I've talked a lot about science being the art of prediction, to try and help people understand how we can have certainty about things, so that better decisions can be made. For instance, some people seem to believe in endless shades of gray, and think that proper skepticism with scientific results is simply to doubt them, but those same people casually flip a light switch without these "shades of grey" attitudes.

Greenhouse gases are why we are alive. The Earth absorbs a small amount of energy from the Sun, reflecting most of it back into space or the planet would be molten. If it reflected all of the solar energy back into space, it would be an ice ball.

We live in the balance.

So there is no doubt about what these gases do. We have scientific certainty.

What we also know is that we're putting more of these gases into our atmosphere than seem to be getting pulled back out as the planet fights for balance despite us. That fight is where we survive.

However, increasing indications are that Earth is losing that battle, and as the greenhouse gases continue to grow, more energy will be absorbed from the Sun potentially causing catastrophic changes.

The actual absolute worst case rarely reported is the possibility that temperatures soar above the boiling point of water and all life except hardy bacteria is killed, but our planet is doing quite a great job for the most part in trying to maintain the balance, and that worst case possibility is considered remote.

However, even if planet Earth saves us from this bizarre experiment where we're dumping vast amounts of greenhouse gases into our atmosphere, it's not clear how much of the world as we know it today, especially the climate we know today, will remain.

Humanity has actually arisen during a golden period in Earth's climate history when for some reason climate was really good for us. Sure there have been swings here and there like ice ages, but nothing that simply pushed us over the brink. If there had been we wouldn't be around to type about it.

The sad irony may be that with our technological development, we push things outside that special range, which may simply be how we usher in an age for some other life-form, like our own dominance required dinosaurs to take a back seat.

So maybe the final realization soon for all is that reality is bigger than all of us, and despite our delusions of grandeur or of not being natural, we are not only just a part of the natural order of our world, we're following along a predestined path to ensure our own fall from dominance.

But I like to believe we're smarter than that scenario, and understanding science is key.

Science got us into this mess, and science can get us out. But people have to understand how it works! So they can work it best.

James Harris

Tuesday, July 29, 2014

No prime preference?

As hard as number theory can be there are areas where you can stumble across simple ideas which have HUGE consequences, especially for generating controversy. Oddly enough it's easy to find raging arguments over seemingly basic things, where I stumbled into one by speculating about prime residues.

And it's easy enough to talk about it using 3 and some other primes. For instance 5 mod 3 = 2, while 7 mod 3 = 1. And if you're a coder you may be more used to seeing something like 5 % 3 = 2, and 7 % 3 = 1. And I use that so it may look familiar as I use "mod" all over the place, but now you should have the idea.

Well, I'm like, why should 3 have any particular residue modulo a larger prime? And "modulo" is just the more precise way to say what I showed above. And it turns out that's not a new thing to ponder and don't worry, we're close to one of the biggest raging arguments you can face if you dare.

For instance 101 is prime, and 101 mod 3 = 2. Think anyone could predict that without checking? Let's go higher. And 1621 is prime and 1621 mod 3 = 1. And no, wasn't trying to get that as just randomly went up to a higher prime. But it is convenient as you can have 1 or 2 as the residue, and why should it matter?

Well accepted number theory is that there is some very complicated mathematics which yup, does involve the Riemann Hypothesis, which says it DOES matter and is not random. While I suggested it WAS random and ran into some of the hugest arguments I've ever faced.

So I'm like, why should primes care what their residue is modulo 3? And extrapolated to primes in general modulo a larger prime and came up with some rules, and even came up with a prime gap equation. Did that years ago and turns out I have things I worked on years ago lying around that I just think about again now and then. Found the prime gap equation is in a post on my math blog from 2006:

If you're bored and like playing with numbers and don't care if it's using ideas supposedly incorrect, you can code it. Mainly just need to know what a prime is, and have a list of primes to plug into this probability equation. Hardest thing to figure out is the correction.

Some may wonder why is it so controversial and why would primes supposedly have a preference. Why would 3, you could say, care whether any particular prime has 1 or 2 as a residue?

Well if there is no mathematical reason then it's random.

Turns out you could define "random" using prime numbers. Which I've done, but yanked it as too controversial.

But it turns out you could solve some currently considered unsolved math problems like the Twin Primes Conjecture and the Goldbach Conjecture. Easy.

So yeah, no way it's accepted mathematics in this day and age! And in fact if I were a mathematician I'd probably not even dare bring it up for fear of destroying my career immediately. Turns out I'm not the first person to come up with these ideas. But I remember finding out about some controversial mathematician who put this notion forward years ago, and later when making a post about it, couldn't find his name again. Otherwise I'd give it here.

Later I decided that I would go even further and conclude I'd actually found a prime residue axiom.

An axiom is a really cool thing where most people believe they were all found long ago. It's something believed to be self-evident. That is, its truth is supposed to be so obvious as to be not in doubt.

Turns out mathematics is built on axioms. Without them, we wouldn't have mathematics! These are the foundation level things, where there is no proof, just the sense these things must be true.

And I decided this no preference of prime ideas was an axiom I guess in 2010 based on the date of the post.

Since I made that up, if you web search on prime residue axiom, it's about my ideas, including people trying to convince they are wrong!

So much fun! Here we started with this simple idea about the prime number 3, and its residues, considered with other primes, and I've managed to take you through a journey through some of the most controversial territory in all of number theory. Managed to put forward the idea that randomness itself can be defined using prime numbers. And let you in on the possibility of a simple resolution to supposedly open problems like Goldbach's Conjecture all in one little post.

And I remind you, officially from mathematicians, there is no acceptance of a prime residue axiom. There is no accepted resolution of the Twin Primes Conjecture or Goldbach's Conjecture. And randomness is not considered to be well-defined through prime numbers.

But if I'm right, and in the future what I say is accepted then these are some of the most important ideas of all time. Just defining randomness changes how we look at random processes, including, yup, the Big Bang itself.

And getting back to the beginning of the universe looks like a good place to stop.

To me this example is one of the most fascinating you can come across to show how easily controversy can be found and to raise questions about what happens as a result. Am I right about prime preference? Let's say for the sake of argument I'm not. But isn't it fascinating to play with such ideas regardless?

Some would say no. And I think here you can see how that kind of pressure can remove from others even the knowledge of a thing.

But if it turns out I'm right then that's huge! If I'm wrong, no big deal really, for me. So for others I think it important to emphasize I'm going against the official position of mathematicians. And I'm NOT a mathematician.

I came into these ideas out of curiosity and discovered I wasn't the first person. But even finding that out can be difficult as mathematicians seem to prefer such things not even be mentioned.

Luckily, I'm not a mathematician, which I like emphasizing, so I am willing to take you on a journey from a seemingly simple idea to the edges of human knowledge and into some of the most controversial ideas in mathematics itself.

I love talking about ideas! And sometimes it's fun to take you to the edge, and show you how close it is! For me, it's where I often have traveled, in journeys for me that feel like a long time ago.

Now, most of the time, I prefer to stay firmly on accepted ground.

James Harris

Monday, July 28, 2014

Is science hard?

The idea of conceptualizing science simply intrigues me and I have attempted to do so with the following basic statement:

Now I want to address common attitudes around science, which may make that seem too simple, as many may believe science is hard, but I say you do it, if you flip on a light switch!

And if you watch babies you may notice they stick lots of things in their mouths, which requires watchful parents and caretakers, as they're doing scientific experiments. This scientific activity of babies helps them rapidly learn their world, and eventually they can predict with great accuracy: like fruit is sweet!

As we grow older the childlike experimental side begins to fade as we learn social rules, and eventually with a personality well established we focus more on our place in our world, and eventually, most focus on procreation and then taking care of children before sliding into old age.

But some retain that childlike need to experiment, and we call those most obsessed, scientists.

So why might people think science is hard if everybody starts doing it as babies?

Well the art of prediction requires figuring out fundamental rules, and eventually those rules can become more difficult or the consequences of those rules are more complex. So, yes, fruits tend to be sweet. But the action of electricity for instance, can be predicted using mathematics that is challenging for most.

What science allows us to do is expand our realm of certainty. 

The more we move that realm of certainty beyond relatively simple things, like those most children learn, we start encountering greater difficulty in comprehending those rules, or their consequences. 

So scientists are in a way adult-babies, which may sound funny, but it best explains the childlike wonder that can drive certain people to keep expanding the realm of certainty, while most are involved with other things.

To the extent that we extend the realm of certainty we are doing science. And in fact plenty of people do science, but it can feel to be very difficult as certainty is actually kind of hard.

Of how many things are you certain in your life?

Remarkably enough, many people believe in endless shades of grey. While some claim absolute certainty, but primarily in a religious context.

Yet who, would argue with you that flipping a light switch and having a light come on is a matter of faith? Or shades of grey?

For many people you might as well call it magic, but we don't! We understand there are underlying rules which humanity has learned to understand so that it can predict with great accuracy what electricity will do.

Few people in the modern world marvel at the wonder of flipping on a light switch and having a light come on.

Maybe we all should.

Those who seek certainty are a different type of human. While most people are more focused on living their daily lives.

So science in and of itself is not hard, and we all start out as little scientists, learning some ability to predict in our world. But that ability to predict, like predictably setting a broken bone with medical science can get harder and harder to have, or can require learning a lot of difficult to understand rules.

So science covers a lot of territory where yeah, it can be really hard in certain areas, like at the limits of human certainty, but to some extent we all get to try our hand in some way shape or form, with the art of prediction. It's just part of the human experience to try and use those advanced brains of ours to try and gain some sense of certainty in our world.

And luckily we get lots of certainty, and next time someone tries to argue against that position with you?

Flip a light switch.

James Harris

Monday, July 21, 2014

Sharing ideas as part of sharing economy

Idea quality is something I think about a lot. Maybe that's a moving target so it's best to just try. Looking over lots of ideas and having my own ideas I like talking about sharing ideas as part of the sharing economy.

To some extent that's obvious, like with an open source application you have a product which people can use to do things, but it's just completely shared with all the ideas within it available to others.

This blog has evolved in my mind into an arena where I can share ideas, where some will be related to my open source application, but I doubt that hampers the ability of others to appreciate it.

Seems to me that can be a fascinating thing as well, as I am a single developer of a small open source project with downloads worldwide. There are decisions I make and things I share which have to do with what it's like to be in this position, and I think a lot of it is accessible to people with no interest in learning to code or administer an open source application, who might nevertheless be curious.

And I have over a decade now with it.

One of the things I like to do is tag certain posts as marketing. The idea though isn't conventional marketing but posts with the goal of clarifying social goals. For instance with this post I want to make clear that idea sharing is important to me, as a goal in and of itself. For me there is a strong sense of what I like or don't like while out there on the web in terms of pushing things on people. I don't like things pushed on me, and see no reason to push. Interesting quality content is a pleasure. You don't have to push quality, if you have it!

And if something is interesting to them, by definition that means people will be drawn to it. Not dragged.

My intent is for the bulk of posts here to be on a broad range of subjects. The Google Translate tool on the blog fascinates me as it opens up the potential for people in a vast array of languages to understand. Which helps with my software as well.

For years I've puzzled how best to use blogs, which is part of the reason I have more than one.

Blogs I think are evolving in terms of their use. I can compare how I use my blogs with how I use other tools like Twitter, and think you can see a specific way in which blogs are becoming more of a natural part of how people and organizations are interacting.

Here I want to talk about things I believe are beyond mundane which is very subjective to me. Of course, whether others agree is entirely up to them.

James Harris