Slashdot Mirror


User: UnknownSoldier

UnknownSoldier's activity in the archive.

Stories
0
Comments
7,910
First seen
Last seen
Profile
(view on slashdot.org)

Comments · 7,910

  1. Re:Sharing is a business now? on 'Tor and Bitcoin Hinder Anti-Piracy Efforts' (torrentfreak.com) · · Score: 1

    You need to expand your world view more. Piracy is common in China.

    * http://www.techrepublic.com/ar...

    BitCoin is a red herring.

  2. Re:It has oil, I heard. on Null Island: The Land of Lousy Directional Data (vice.com) · · Score: 1

    Is that all you can do -- is try to make lame jokes?

  3. > .. and they license files via purchase agreements (EULAs), etc

    FTFY.

    Depending on the platform you don't "own" digital files -- all you have is a license and they can terminate it at any time. i.e. Steam.

    Worse, you can't even sell "your" stuff.

  4. Re:why else do you think he was never caught? on FBI Closes D.B. Cooper Investigation After 45 Years (oregonlive.com) · · Score: 1

    You really don't understand the concept of Senescence nor cellular aging do you ? ;-)

  5. Re:Hell froze over... on Microsoft Finally Releases New Skype App For Linux (skype.com) · · Score: 3, Funny

    Close.

    Microsoft has implemented a Linux shim that translates all the native Linux system calls into the corresponding native Windows call and back.
    http://blog.dustinkirkland.com...

    Demo of running native Linux ELFs on Windows
    https://sec.ch9.ms/sessions/bu...

    Think of it as the reverse of WINE -- I dub it CHEESE. :-)

  6. Re: TMS9918 != MC6847 on Sega Saturn's DRM Cracked Almost 23 Years After Launch (gamasutra.com) · · Score: 1

    > Also... what did an Apple II do if you had two adjacent bytes... one with the msb set, one with the msb clear, and set the rightmost pixel/bit of the first byte, and the leftmost pixel/bit (bit 0) of the second byte?

    FTFY. bit 0 is the leftmost bit, not 6. Remember the Apple displays bits in reversed order. :-)

    Anyways, if you follow comp.sys.apple2.programmer then it is trivial to try this with Michael's HGR byte inspector:
    * https://github.com/Michaelange...

    Ctrl I
    Ctrl J
    Shift 7
    Shift 8
    L
    Shift 1

    Or you can do this manually:

    HGR
    CALL-151
    2400:C0 01
    2800:C0 01
    3400:00 C0 01
    3800:00 C0 01

    > Did it make white, because you had two adjacent on pixels,

    Yes and No.

    Yes, as two adjacent bits always make white BUT ...

    No, as due to the Apple's video generator and the Monitor's NTSC composite signal conversion it ALSO depends if the first byte was on an even or odd address line ...

    > or did the fact that one was a blue or red pixel, and one was a green or purple pixel, make a difference? ... which determines how the leading and trailing edges of the pixels are colorized.

    2000:C0 00
    2C00:00 01
    3000:00 C0 00
    3C00:00 00 01

    Adjacent pixels on an even address:

    * leading edge is colorized blue, half pixel
    * trailing edge is colorized green, full pixel

    Adjacent pixels on an odd address:

    * leading edge is colorized orange, half pixel
    * trailing edge is colorized purple, full pixel

    You can test this via:

    2080:C0 00 01 C0 00 01
    2480:C0 00 01 C0 00 01
    2880:C0 00 01 C0 00 01
    2C80:C0 00 01 C0 00 01

    NOTE: Apple emulators (with poor NTSC code) won't colorize the pixels properly. They will show it as just white, but on real hardware you'll see:

    [color][white][color]

  7. > Even Yahtzee of ZeroPunctuation isn't actually a good reviewer.

    Disagree. Ben's Minecraft review years ago was pure gold -- as in entertaining. At least it was more honest then a lot of other (game) reviewers.

  8. Innovate.

    Oh wait, M$ has copied Apple since '95 and instead we get a gaudy, crappy, UI in turn.

    Hey it only took them 27 years to include Bash in Windows 10 !

  9. Re:What's a mile? on New Dwarf Planet Discovered In Outer Solar System (seeker.com) · · Score: 1

    > as they need replacement

    Yes, that was implied. Thanks for clarifying that!

    The tourist is an interesting angle! That's a great idea that complements this one.

  10. Re:What's a mile? on New Dwarf Planet Discovered In Outer Solar System (seeker.com) · · Score: 1

    If politicians weren't retards they would list BOTH units on speed signs to help people transition over. Would cost a ton of money for sign replacement but that can be amortized over the years.

    --
    WTB: Apple ][ ThunderClock Plus peripheral card

  11. Re:All fun and games until your account gets stole on PSA: Pokemon Go Has Full Access To Your Google Account Data (techcrunch.com) · · Score: 1

    I solve this problem like this:

    * GMail for Personal
    * private domain name + email for all Biz related stuff

  12. Re:Surprise? Why? on TIOBE's Language-Popularity Index Sees A New Top 10 Language: Assembly (tiobe.com) · · Score: 1

    Yup, I use ca65 directly since c65's code generate is so horrible.

  13. Re:Isn't gaming about overcoming obstacles? on PC Gaming Is Still Way Too Hard (vice.com) · · Score: 1

    The problem is that these are the new dumb millennials who can't find the "I Win Button".

    It is easier for them to bitch about something then to ask others for help, let alone use 2 brain cells to google:

    * Reddit PC Master Race Builds

  14. Bullocks -- if only there was a place to ask ... on PC Gaming Is Still Way Too Hard (vice.com) · · Score: 1

    Gee, if only geeks would share their knowledge. Oh wait, they already do:

    * https://www.reddit.com/r/PCMas...

    I've been building custom PC gaming rigs since the early 90's. This isn't rocket science. You spend a few minutes doing research -- or if you are really lazy

    * http://www.tomshardware.com/t/...

    Hell, if you can't even be bothered to think one could always go with Dell / Alienware.

  15. Re:Surprise? Why? on TIOBE's Language-Popularity Index Sees A New Top 10 Language: Assembly (tiobe.com) · · Score: 1

    I too have worked on a C++ compiler (PS3).

    While it sounds like you are very knowledgeable in the first 3, sadly, it sounds like you don't understand the 4th level of optimization aka Data-Oriented-Design. :-/ The levels of optimization are:

    1. Use a lower level language
    2. Micro-optimization or bit-twiddling
    3. Algorithm
    4. Macro-optimization or cache-orientated aka Data-Orientated Design

    I think you'll enjoy these links:

    * Pitfalls of Object Oriented Programming

    and

    Code Clinic 2015: How to Write Code the Compiler Can Actually Optimize

    > or perhaps recoding Java into C++.

    Unfortunately, this is the 1st level of optimization by the inexperienced and is the *wrong* place to start.
    You need to look at the *data first*, NOT the code before you start optimizing.

    Switching implementation languages is (usually) a symptom of NOT understanding the problem.

    "Show me your flowchart and conceal your tables, and I shall continue to be mystified.
    Show me your tables, and I won't usually need your flowchart; it'll be obvious."
    -- Fred Brooks, The Mythical Man-Month.

    The modern vernacular paraphrase is:

    "Show me your code which obfuscates the data (structures) and it will take a while before I can understand / optimize it.
    Show me your data and I won't need to see your code."

    Here is my post where I explain the 4 levels of optimizations in greater detail.

  16. Re:Surprise? Why? on TIOBE's Language-Popularity Index Sees A New Top 10 Language: Assembly (tiobe.com) · · Score: 1

    Whoops, forgot the link to Mike Acton's talk:

    Code Clinic 2015: How to Write Code the Compiler Can Actually Optimize
    * https://youtu.be/GPpD4BBtA1Y?t...

  17. Re:Full of Shit on Fair Use Threatens Innovation, Copyright Holders Warn (torrentfreak.com) · · Score: 1

    Exactly.

    Assumption: You need copyright to make a profit.
    Status: DEBUNKED.

    If the Fashion Industry can survive without copyright then this is pure bunk.

  18. Re:Surprise? Why? on TIOBE's Language-Popularity Index Sees A New Top 10 Language: Assembly (tiobe.com) · · Score: 1

    TL:DR; You need to learn HOW to optimize:

    @37:30 -- Mike Acton: Code Clinic 2015: How to Write Code the Compiler Can Actually Optimize

    - - -

    > If you want speed, assembly is the ONLY option.

    Total NONSENSE.

    A. You keep implying this word optimization -- it doesn't mean what you think it means!

    B. There are four lights, er, types of optimizations:

    1. Use a lower level language
    2. Micro-optimization or Bit-twidling
    3. Algorithm
    4. Macro or cache-orientated, aka (Data-Orientated Design)

    What do these mean?

    1. Use a lower level language

    With bloated languages and incorrect use of C++, Java, etc., inexperienced programmers naively thing changing to a "lower level" language -- such as C or Assembly -- will help speed up their code. While it is true one has access to more programming paradigms in a low level language, i.e. you can use the carry flag as a return value instead of wasting an entire byte with assembly, this type of optimization only takes you so far before you need to look at alternatives.

    2. Micro-optimizations

    All good programmers should read (and understand!) these bit twiddling optimizations:

    * bit-twiddling hacks
    * Hackers Delight

    While compilers can generate "good enough code", sometimes hand-optimized instructions can beat the compiler. e.g. Before compilers optimized division with reciprocal multiplication, a common technique for division was to manually change division into reciprocal multiplication. i.e. `/ 3` -> `* 1/3` which means you would see something like this:

    int a = 123 / 3;

    would be replaced with:

    int b = (123 * 65536 / 3) >> 16;

    Thankfully most compilers will perform these integer divisions but you can try this out with an online C compiler:

    #include <stdio.h>

    int main()
    {
    int a = 123 / 3;
    int b = (123 * 65536 / 3) >> 16;
    int c = a == b;
    printf( "a: %d =%d= b: %d\n", a, c, b );

    return 0;
    }

    These types of micro-optimizations are becoming rarer and rarer as compilers (slowly) get better. However Don't assume. VERIFY your assembly output of the compiler.

    Floating-point optimizations still show up. The most famous is probably John Carmack's Quake 3 Inverse Square Root

    This PDF provides a very good explanation:

    * http://www.lomont.org/Math/Pap...

    3. Algorithm

    The fastest way to optimize (from the programmer's run-time) is to replace a slower algorithm with a faster one.

    i.e.

    * If the common case for your data is unsorted, then replacing a dog-slow bubble sort with quick-sort will show gains.
    * However, if the common caseis that the is 99% mostly sorted, then changing algorithms may not always help.

    This is where most people start to optimize. BUT, notice how I said "Common Case". There is a _higher level_ of optimization we can do:

    4. Macro or Cache-orientated.

    The 0th rule in optimization is:

    Know Thy Data

    When you optimize you need to optimize for the common case. This means understanding data flow, Memoization, and transforms. You _must_ question ALL assumptions, knowns, and unknowns. What, exactly, are you trying to do? i.e. Printing Primes and Printing

  19. Re:Surprise? Why? on TIOBE's Language-Popularity Index Sees A New Top 10 Language: Assembly (tiobe.com) · · Score: 1

    Only shitty programmers continue to make excuses why they are shitty.
    Arrogance is assuming you THINK you already know.

    > In Java you have no influence in caches etc.

    FALSE.

    Do you actually understand _anything_ about cache lines???

    HOW you access memory determines your maximum throughput.

    Proof: Here are two different ways to sum up an array:

    1. In the first example we access every 0th, 16th, 32nd, 64th element. Then 1st, 17th, 33rd, etc. Then the 2nd, 18th, 34th, etc. Our stride is 16 elements.
    2. In the second example we access every element in a contiguous fashion. Our stride is 1 element.

    If one "had no influence in caches" like you ignorantly assume the timing would be identical. However one is SLOWER then the other.

    Copy and paste into an online Java compiler

    public class HelloWorld{
     
        public static void main(String []args){
            final int _K = 1024;
            final int N = 2048 * _K;
     
            int[] a = new int[N];
            int sum;
     
            long start, end, dur;
     
            for( int i = 0; i < N; i++ )
                a[i] = i & 0xFF;
     
            start = System.nanoTime();
            sum = 0;
            for( int j = 0; j < 16; j++ )
                for( int i = j; i < N; i += 16 )
                {
                    sum += a[ i ];
                }
            end = System.nanoTime();
            dur = (end - start) / 1000000; // milliseconds.
            System.out.format( "Sum: %d, Time: %d\n", sum, dur );
     
            start = System.nanoTime();
            sum = 0;
                for( int i = 0; i < N; i++ )
                    sum += a[ i ];
            end = System.nanoTime();
            dur = (end - start) / 1000000; // milliseconds.
            System.out.format( "Sum: %d, Time: %d\n", sum, dur );
        }
    }

    > Your "lack of understanding of memory access patterns" has nothing to do with assembly or C++.

    If you would actually _watch_ and _learn_ you would recognize this is false.
    https://youtu.be/rX0ItVEVjHc?t...

    > libraries that tried to exploit caching behaviour (1993 or so?). However that has nothing to do with assembly ;)

    Here's your cookie for missing the point"

    Assembly language programmers tend to be more knowledgeable of when and where their code is slow. C++ and Java programmers tend to be more ignorant of high performance because they generally don't have a clue _how_ the compiler is generating the corresponding asm for their code -- and then they wonder why it is slow.

    A good programmer learns assembly to better understand how to write simpler, smaller, and faster code.
    A shitty programmer makes excuses for why they don't understand assembly.

  20. Re:So will they be passing that savings onto us? on Hostess Saves Twinkies By Automating, Fires 94% Of Their Workforce (washingtonpost.com) · · Score: 2, Insightful

    Another benefit not mentioned:

    Now there are less humans stuck in a mundane dehumanizing job. Their Quality of Life will improve as they look for a more fulfilling job.

  21. Re:Surprise? Why? on TIOBE's Language-Popularity Index Sees A New Top 10 Language: Assembly (tiobe.com) · · Score: 2

    >> If you do not know assembly, you cannot be a really good coder
    > That is bollocks.

    Only shitty programmers are clueless about assembly, which in turn implies they lack an understanding of memory access patterns.

    Hint, try *reading*: Pitfalls of Object Oriented Programming

    Even Bjarne Stroustrup, the designer of C++, until 2012 was completely cluess _why_ doubly Linked Lists were so slow compared to Arrays

    HINT: Managing the L1 Cache usage is critical for performance sensitive code.

    Programmers concerned about speed use Data-Orientated Design. For details see CppCon 2014: Mike Acton "Data-Oriented Design and C++"

    Knowing when to use, and NOT to use OOP, makes a programmer better. Using design patterns without *thinking* shows others you don't understand programming.

    --
    Wanted: An Apple 2 Thunderclock Plus peripheral card.

  22. That is freaking AWESOME! Got any more cool hardware hacks?!

    And here I thought Oscifun was amazing!

    Oscillofun on Tektronix 2245A
    * https://www.youtube.com/watch?...

  23. > considering that the Amiga was infamous for its plethora of viruses.
    > Some of which were rather amusing, like playing a song with the stepper motor of the floppy drive, ..

    Go on ...

    Now I've heard of Beagle Bros' "Silicon Salad" TL:CHUGGACHUGGA for the Apple ][ before

    0 REM AJIT JOSHI--CANTON,MI
    1 HOME: POKE 50,223:FOR X = 150 to 255:SPEED=X:PRINT PEEK (49385) + PEEK (49386);:PRINT "CHUGGA";: PRINT PEEK(49387);:NEXT:END

    but I haven't heard that about one !

  24. You're looking for this picture ... "Ignorance Map"
    https://lh3.googleusercontent....

    * Known Unknowns -- All the things you you know you don't know
    * Unknown Unknowns -- All the things you don't know you don't know
    * Errors -- All the things you think you know but don't
    * Unknown Knowns -- All the things you don't know you know
    * Taboos -- Dangerous, polluting or forbidden knowledge
    * Denials -- All the things too painful to know, so you don't

    Ironically, it is missing the most important part:

    * Known Knowns -- Everything you know (either by proof or experience)

    --
    Fix the broken political system -- POOL all political donations and then evenly divide them every quarter to every active party.

  25. Re:Missing something from the so called 'summary'. on Theranos CEO Elizabeth Holmes Banned From Owning a Lab (engadget.com) · · Score: 1

    Agree 100%. What the fuck is the CONTEXT??

    Hey /. editors -- how about you get off your lazy asses for once:

      Elizabeth Holmes, CEO of Theranos (a health-technology and medical-laboratory-services company), Banned From Owning a Lab

    /Oblg. <voice="Nick Burns> "See, was that so hard?"