HNHacker News
TopNewBestAskShowJobs

steaminghacker

92 karma · joined May 22, 2015

submissionscomments
steaminghacker··on Ask HN: What's the best library for making cross-platform UIs?
Yes, HiDPI support was added. I need it for Windows 4k screens.
steaminghacker··on Ask HN: What's the best library for making cross-platform UIs?
Same here. I ran into a few problems with Android. Controls 2 is not quite ready yet, I had to write some Java, but it worked. Hopefully more AndroidExtras will be added in time.
steaminghacker··on Ask HN: What's the best library for making cross-platform UIs?
+1. that's exactly what I do.
steaminghacker··on “A tale of lies and deceit” – GrabGas CTO let go by founders
it's easy to say that anyone should have had a written agreement in such circumstances, but the first 4 months of any start up are likely to be hectic and there's no time to take out for this kind of thing. Especially when you think you're working with your "friends".

Nevertheless, a very clear verbal agreement should have been made. I know this cant be enforced without proof, but it does mean than those involved know the counter-parties also know what they agreed to. it makes things harder to deny.

The reason being that, it would be madness to betray each other, just as things start to work. A thing started is far from finished, and they will need everyone and more.

Most important of all, it would seem the tech guy legally owns what he has built, in the absence of a proper agreement. Even with a backup copy of this tech, the remaining people aren't likely to be able to extend it easily.

The tech guy should consider forming his own startup with the tech he has made.

steaminghacker··on Voice Recognition Software Beats Humans at Typing
I use voice recognition for taking notes whilst on the move. Although good for short sentences, a lot of improvement is needed before i could, for example, dictate a document. Punctuation is an example of a weak area.

There are also certain words and phrases that it gets wrong much of the time. I have learnt to not use these when making voice notes. There's definitely a learning curve to use voice effectively.

steaminghacker··on Show HN: WebGL Fire Simulation
Sorry, this version wont just paste back as is in shadertoy. Also it needs a random 256x256 bitmap in channel 0. The effect is the same as ozzy's original, except change ITERATIONS to 13 in his code to see the change (which is only slightly better). The other changes were for performance, which i improved slightly.
steaminghacker··on Drawing isometric boxes in the correct order
why not draw the individual polygons as a single batch?
steaminghacker··on Show HN: WebGL Fire Simulation
do you have a shadertoy version of this for comparison?

i took this one by ozzy https://www.shadertoy.com/view/lsSGWw and tweaked a few things by hand for optimization. saved a few cycles on the code and increased the iterations to 13, which gives a better result.

like this:

#define ITERATIONS 13.0 #define SPEED 10.0 #define DISPLACEMENT 0.05 #define YOFFSET 0.1 #define YSCALE 0.25 #define FLAMETONE vec3(50.0, 5.0, 1.0)

        uniform lowp sampler2D source; // this item
        uniform lowp sampler2D chan0; // random map
        uniform lowp float qt_Opacity; // inherited opacity of this item
        varying highp vec2 qt_TexCoord0;
        uniform highp float    time;           // shader playback time (in seconds)

        float noise( in vec3 x ) // iq noise function
        {
	        vec3 p = floor(x);
            vec3 f = fract(x);
	        f = f*f*(3.0-2.0*f);
	        vec2 uv = (p.xy+vec2(37.0,17.0)*p.z) + f.xy;
	        vec2 rg = texture2D( chan0, (uv + 0.5)/256.0, -100.0 ).yx;
	        return mix( rg.x, rg.y, f.z ) * 2.0 - 1.0;
        }

        void main()
        {
	        vec2 uv = vec2(qt_TexCoord0.s, (1.0 - qt_TexCoord0.t));
	        float nx = 0.0;
	        float ny = 0.0;
            float i;

	        for (i=1.0; i<=ITERATIONS; i = i + 1.0)
	        {
		        float ifrac = i/ITERATIONS;
		        float d = (1.0-ifrac) * DISPLACEMENT;
                ifrac *= time;
		        float ii = i*i;
                float y = uv.y*YSCALE*ii - ifrac * SPEED;
                float x = uv.x*ii;
		        nx += noise( vec3(x-ifrac, y, 0.0)) * d * 2.0;
		        ny += noise( vec3(x+ifrac, y, ifrac/ii)) * d;
	        }

            uv.x += nx;
            uv.y += ny;

            // a blob shape to distort
	        float flame = clamp( sin(uv.x*3.1416) - uv.y+YOFFSET, 0.0, 1.0 );            
            flame *= flame; // f^2
            float ft = flame*flame; // f^4
            flame *= ft*ft; // f^10
            
	        //lowp vec3 col = pow(flame, TIGHTNESS) * FLAMETONE;
	        lowp vec3 col = flame * FLAMETONE;
            
            // tonemapping
            col = col / (1.0+col);
            
            // ~sqrt
            //col = pow(col, vec3(1.0/2.2));
            col = sqrt(col);

            col = clamp(col, 0.0, 1.0);
            
            lowp vec4 p = texture2D(source, qt_TexCoord0);
            p.xyz = col;
            gl_FragColor = p * qt_Opacity;
        }
steaminghacker··on Ask HN: How have you left Google's services?
I'm locked out of gmail, so i don't use it anymore. It's what happens when they can't track you. "suspicious activity" they call it.
steaminghacker··on Show HN: Tenta – A private encrypted browser
Couldn't they put a direct APK link from the website?
steaminghacker··on Show HN: Tenta – A private encrypted browser
How do i download this without loggin into google? thanks.
steaminghacker··on Beyond grep, Ack: a better grep, for programmers
I use something like this which i wrote myself years ago, but i still use it every day. My version is called qgrep (for quick grep).

It does this:

* knows which files are source code and which are not * ignores tmp files like ~ and # * automatic recursive search.

Some differences from ACK which i still want,

* can be given a filename pattern and can glob within each directory. * can search binary files too! * doesn't do regexp at all!

> why? regexp is much slower than straight string search if using something like Boyer-Moore-Galil, and this is important when you're searching massive subtrees of files.

For regexp, I'll use grep with its fancy options. For straight, find this string in all my code, I'll use qgrep.

For those linker undefined, mangled functions, it's great to qgrep the .o files and .libs.

steaminghacker··on [dead]
I'm tired of this remain propaganda.

There's been none of the apocalyptic predictions. In fact the FTSE100 is higher than it was before the referendum. There's going to be a short period of adjustment, but in the long run we're better out. The pound is down because all the banks bet billions on Remain and lost - including Virgin.

Remainders have been deluded by the EU ideal that is not the reality. the EU is the privatisation of government, and in collusion with big business. They hate democracy.

They kept, until after the referendum, the plans to start the EU army and the takeover of national central banks. This will happen to the 27 unless they get out. The EU will acquire competency over taxation, including corporation tax and income tax. They already control VAT (sales tax). VAT went up to 20% (from 17.5%) following handover to the EU. Almost all that difference goes to EU funding.

The cost of membership of the EU is rising every year. Why do we need to fund both a national government and an international one. It's all just greed.

steaminghacker··on Android changes for NDK developers
what's the deal with libssl/libcrypto. I discovered that if you put these into your APK, it ignores them using instead its own copies.

So if you think you're working from your own compiled official version, you're not.

steaminghacker··on You can type anything here to visualize its grammatical structure
"the red cup and saucer on the table" parses as the (red cup) on the table and saucer. but both are red and both are on the table, if the default meaning of the phrase would be understood.

also, i like the idea of the composer, but the rephrasing only works on small phrases (that are easy), when actually bigger ones would be the real value here.

WIP i guess?

steaminghacker··on Qt 5.7 released
thanks for this info. i'll checkout WebView, see what it can do.
steaminghacker··on Qt 5.7 released
Apparently Android services is now in 5.7. This is good news because i need them. I've been working to supercede my Java app with QtQuick and replacing the services was going to be a problem.

I havent tried the Qt services yet (plan for next week). I hope they work!

steaminghacker··on Qt 5.7 released
Good question. maybe i don't know the answer. I've been impressed by the way that QML and C++ integrate. I write bits of UI glue JS in QML and these bits call into C++ "magically". I can pass data in and get data back.

This is a lot easier than my JNI battles with Android Java.

I tend to have a lot of backend C++, which performs all the heavy lifting of my apps. I like to make the front UI as thin as possible. QML lets me build things quite fast and i like the way that properties update themselves.

The only real complaint i have with QtQuick/QML is things not working properly on Android. But I'm hoping this situation will improve, and the main reason I'm looking into Controls.2

You say that jquery can call to C++. Where can i find out about this and how would this work on Android.

steaminghacker··on Things I hate about Git
the clue's in the name.
steaminghacker··on Qt 5.7 released
Ive been using QtQuick for a while now and the last two weeks i've battled with 5.7RC. So, time to dl the proper release and see if it works any better.

My conclusions are that it's fantastic for desktop apps, but I'm having a lot less success with mobile, specifically Android.

Originally, my plan was to reserve QT for desktop and write the mobile versions separately, whilst sharing the same C++ backend. However, i got tempted to try cross compiling my desktop version for Android.

After a massive battle, it works - a bit. But there's enough that doesn't work that prevents me from making a release just yet (cut & paste is missing!). Looks like I'll have to fill in the blanks myself.

Then Android is always a pig. I'm chewing over whether to recompile QT from source and start hacking it about for Android. This is what Ive had to do with pretty much all the cross platform systems. Android support is always poor and buggy.

On LGPL, I'm fine with it. If you want my QML source code, sure. But for now, I'll keep the backend DLL/.so closed (although I'd like to open that too, when ready). If you want to be able to change the front end and rebuild, I'm ok with that too. in fact, I'll happily document the backend interface for you.

Can we have more Controls.2 QML examples please (most are recycled v1 examples). QtQuick lacks in the tutorial department, although the online docs are good, once you know what you're looking for.

qmake is great, but qtcreator sucks, sorry. Qt widgets is obsolete, QtQuick is the way, once you get over QML.

steaminghacker··on What normal and abnormal heart rhythms look like on an Apple watch
i thought you needed three electrical connections for ECG?
steaminghacker··on All the Adventures
a bit of a challenge to play them all.
steaminghacker··on Tutonota: An end-to-end encrypted email client and hosted service
how does this compare to protonmail ?
steaminghacker··on Qt Creator 4.0.0 released
good point. what do people do for themes and styles in QML?
steaminghacker··on Qt Creator 4.0.0 released
totally agree. I'd like to see more on deployment. it would be nice to have cross platform installer and updater too. I've had to make these myself.

I put my own QML into resources, but windeployqt.exe pulls in a big chunk of their own QML into the deployment. huh? these should all be resource.

My "hello world" app is 30MB, so yes this too.

steaminghacker··on The coming debt bust
www.economist.com - Access Denied
steaminghacker··on Qt Creator 4.0.0 released
I'm using Qt quick (LGPL version) for development. After a bit of a learning curve, i really like it.

Its important to recognise that QtQuick and QtWidgets are _different_ systems. Quick is all on the GPU. It awesome for building touch based apps. I'm currently targeting desktop development. I haven't found much else that will use the GPU pipeline in an easy way.

steaminghacker··on [dead]
Ask PWC to pay for the heels if they're a mandatory job requirement. As accountants, they should know that, under this assumption, they would be a legitimate expense.

They will refuse to pay.

steaminghacker··on MyBrains – All your notes in one place
yes, i largely agree with this.

When i look at my note taking activity it works out as follows; (1) desktop use, when I'm sitting at my desk, I'll either type a note or cut from the Internet. (2) mobile use is mostly access, but creation here is usually by sharing something from another app. (3) dictation from Android Wear accounts for around 1/3 of all new notes.

(3) is quite important to me so that i can make new notes on the go. for example, today i met a friend for lunch. i dictated one note walking on the way and 3 on the way back from our chat - while these things were fresh in my mind.

Dictation from Wear works remarkably well. providing. you. say. each. word. clearly. it really helps to get around 99% correct.

Regarding organisation, you're right about this too. basically as the number of notes grows, the problem of organising them increases. People don't want to do the organising, so there needs to be a self-organising system. It's easy to see how this might be done with pictures, but for text notes, it's not so clear.

Of course, search needs to work really well too!

steaminghacker··on MyBrains – All your notes in one place
Do not listen to the naysayers!

The problem with this kind of endeavour is how to convince people their genuine need for it. I call this the, "green eggs and ham" paradox.

People will say they make lists on paper, or in a pocket book. They say; Oh it's just a notepad, or Why not use Google Keep? Or, why are you taking on Evernote?

But the truth is, they lose those bits of paper, Google Keep gets overcrowded after a few dozen things and Evernote is clunky and _really quite expensive_.

For years, i've been putting my information into digital form, but i've yet to find the ideal app for it. So much so that i've begun to develop my own. Unfortunately, yours doesn't work for me either (eg major requirement, offline access).

But the principle still stands that there's a growing need for a digital means to accommodate personal information, because there's simply too much junk for the human brain to remember it all.

I've looked at a number of other online note-taking systems. none seem to be gaining much traction, but i don't know why.

← PreviousPage 2 of 4Next →