Tuesday, 25 December 2018

A Church for the Lost

I guess it was somewhat of a good thing that it took me a little bit to actually get around to writing this post. At first, I was inspired to do so because when I was in Brisbane I decided that I wanted to go and visit the church that I usually visit when I am there. The thing is that they have this service at 6:30 pm on Sundays which is referred to as an 'informal service geared towards those interested in finding out more'. As it turned out, I had been to this particular service years ago, when I was in Brisbane for work. You see, the difference between this service, and the one at 5:30, is that the one of 5:30 tends to be more geared towards university students and then there is the morning service, something that somebody like me doesn't really like namely because if I don't have to get up early, then I basically don't want to get up early.

Yeah, it's pretty clear that I don't have, and have never had, kids. I still remember the pain and frustration that would course through my parent's, when at 7:30 am on a Saturday we had bounced out of bed and were running around like nobody's business, and all they ever wanted to do was to sleep in. Then, for some really strange reason, when we became teenagers, and sleeping in became a thing (because staying up late watching Ronald Reagan movies was a thing), they still would get up relatively early. I guess that sort of happens when you spend 15 years of you life being forced to get up early.

So, yeah, I like to sleep in, so really, really early services don't appeal to me, and neither do family services because, well, I don't have a family. Actually, as one of my friends, who has recently discovered the joys of having children, discovered that the problem with family services is that you end up spending all your time running around after the kids that you never actually get the opportunity to socialise. Maybe that's just because kids are so much more hyperactive these days, because from what I can remember, my parents had no problems socialising during the family services.

Anyway, this service seemed to be just right, except it wasn't what I expected. Sure, one of my former pastors had this saying 'I'm not okay, you're not okay, we're not okay, but that's okay', and that our church was a church for 'broken people' who needed healing. Except, the fact of the matter was that it sort of wasn't. Look, don't get me wrong, I love the church that I am currently going to, and have made some pretty good friends here, but if there are broken people in the church, then they do a pretty good job of hiding it. In fact, the guy that says 'I was a porn addict and my wife left me, and God healed me and now I am happily married again' really doesn't know what true brokenness actually is.

Look, that is probably being a bit harsh, because honestly, I wouldn't wish divorce even on some of my worse enemies. yet a part of me feels that maybe, just maybe, this particular person really doesn't get it. You see, until you have seen broken people, you really don't truly understand what brokenness is. Honestly, this isn't a world, and Christianity isn't a religion, that say's 'worship God and everything will be fine and dandy'. Look, seriously, this world is not all sunshine and lollypops, and Christianity certainly doesn't make all your problems go away - just ask the Piedmontese who all got thrown off the top of a mountain because the rejected Catholicism and decided to become protestants, or the Indians who had their houses burnt down, and the police refused to do anything about it.

So, I am sitting there, a little stunned, but quite humbled. In a way, seeing these truly broken people, one of them bawling his eyes out because no matter how hard he tries he just cannot give up smoking, and all that seems to be happening is that cigarettes are getting more, and more expensive.  Seeing the people that cannot live without carers, and a church service that is geared towards people who probably don't, and never will, understand some of the deep theological concepts that are expounded during many of our more middle class services.

Honestly, these people simply do not care about the intricacies of the Holy Spirit, and how it is possible that God can be three persons in one. They don't care about the debate between predestination and free will, and don't really care about it even if we did try to explain about them. In fact these people are the ones that probably never have to worry about greed, because they have nothing to begin with.

Yet, what it makes me realise is that, in some cases, I feel that we may be missing the point somewhere, in our sheltered middle class churches. Such as when we spend more time studying the Bible in groups, than actually going out and helping in the community. Moreso when we are being exceptionally critical of certain behaviours, without realising that some of these behaviours are really not worth getting all hot and bothered about, and by getting upset about them, we are more likely going to push people away, rather than draw them in. In fact, I still remember when one of my small group leaders jumped down my throat when I dozed off during small group, telling me that if I wanted to sleep, then I can go it at home. Well, that was easy then, I just stood up and headed for the door - you can be assured he never used that line of rebuke from then on.

Yet the church is an incredibly insidious institution. Okay, these days, many are spending their time hiding from the world, holding out crucifixes to ward of the incessant evils that they believe are pounding at their doors. All the while they are infiltrating the political sphere, taking over political parties, and using their economic policies not only to drive people further into poverty, but to destroy the world in the process. In fact, some Christians have found huge problems with the fact that on one had their political allies are denying women abortions, and on the other completely destroying the Earth - maybe, just maybe, there is this belief that in doing so they will hasten the coming of Christ and send all of the evildoers to hell.

However, something still bugs me, and it is not just the fact that churches end up becoming your entire social group. There is something about the zealous that really disturbs me, and I am not talking about the fundamentalists, or the cultist either. No, I am talking about some of your average, middle of the road churches. Yet for some reason they seem to be getting pushed further and further to the right. However, it just feels as if there is this fear, this fear that the church will not only be taken over by the world, be overrun by the young hipsters with their pagan beliefs. In a way they treat themselves like havens who send out missionaries into the world to try and bring as many people back as possible, and once they have brought them in to do as much as possible to keep them there.

This is why I would walk out of Bible Study, because I basically got sick of the shit that would be spouted from people's mouths, sick of the hypocrisy, the back biting, the sniping, and the sneers and jeers, they would run back out and draw me back, and then promptly rebuke me for being so childish. Then, when I did finally say 'fuck this for a joke', they would continue to hunt me down, tell me that I was the one that had the problem, and that I was the one that needed to forgive, because, well, we as Christians are supposed to forgive one another. Should I call it Gaslighting? I'm, not sure, but a part of me certainly feels that this is what was going on - or is it blaming the victim? Or is it both.

The first thing that I should point out is that Christians aren't the only people who, when they get together, all start acting like dicks, start playing power games, and start pushing people around. As Aristotle pointed out two and a half thousand years again, Man is a Political Animal, which means that when people get together, they start playing power games, and also start kicking the weakest around. In fact, when somebody decides to call out their bullshit, they will get even more violent. However, we live in a society with laws, and you simply cannot cut somebody down because their bullshit has been called out, so they resort to much more subtler methods, such as attacking irrelevant points, or even attacking character. Another interesting thing is that I've also noticed that some of the biggest jerks are actually half decent people when there is nobody else around.

So, when people get together, people start acting like jerks, it doesn't matter whether you are in a politcial party, or in a gaming club. In fact, I left both types of organisations namely because there were a bunch of people there that were basically behaving like jerks, and playing power games, as well as being completely close minded to any thoughts other than their own. I still remember one particular person at a gaming club, when he was serving behind the bar, went over my driver's license with a fine tooth comb, simply because he could, and also want to remind everybody that this was his domain, and he had the authority to throw his weight around - no wonder the organisation collapsed under its own contradictions.

Yet if all organisations are like this, why don't we simply tell the church to basically get stuffed and walk away. Well, that is basically what is happening, and is what has been happening for the last hundred of so years. When my parents were children there was huge social pressure to make an appearance at church, though more in my Mum's case than my Dad's. Mum would tell me that every Monday morning, if you weren't at church you were called out, and shamed. However, people are walking away from the church, in the same way that they are walking away from political parties, from unions, and even from gaming clubs - they have realised that they are sick of the bullshit and the powergames, and are simply happy to live their own lives with decent people - except there are none. Oh, and who is to blame? Well, the people walking away from the church, as opposed to the church itself.

So, why didn't I walk away from the church? Well, I did, and when I did I found that my life was spiraling even further and further into turmoil. So, whose fault was that? Well, a part of me wants to blame the church, but is it the church's fault? In part it is, in just the same way that a serious injury caused by a drunk driver is the fault of the drunk driver. However, whose responsibility is it? Well, it is mine - do I continue to let the rubbish get to me, or do I move on? Well, I ended up moving on, though it was certainly a pretty hard task to do so.

Why, then, this particular focus on the church? Well, because the church is supposed to be so much better than this. In fact, they try to make it appear that they are so much better than this. Yet, the reality is that they are little different than that gaming club that collapsed in on itself. However, the thing with the church is that they offer salvation, but who do they offer salvation too? The middle class of course. Which brings me back to the broken people that I mentioned before hand. You see, it is so much easier, and profitable, to reach out to university students and business men - in fact the churches that I have been to seem to be full of middle class people - they have the money, therefore the church continues to grow, send out missionaries, and transform the world.

Or should I say destroy it with their neoliberable, climate change denying, economic policies.

But let us get back to this small gathering that was meeting in the basement of the church in South Brisbane. As I sat there I realised that this is what a church is supposed to be - a room full of broken people who fully understood their brokenness. A gathering that is not only welcoming and supportive, but a gathering that is patient with people that may not fully understand what it means to be a part of the middle class, church going culture. It was a church without the flashy lights, stage-managed performances, or even semi-professional musicians - it was just one guy on a piano.

Yet the problem is that many of us who live in a middle class culture, people who do not struggle with alcoholism, drug addiction, or even cigarettes, can truly understand. It is hard for those of us who have never been in trouble with the law, who do not have a criminal conviction hanging over their heads, to truly understand what it means to be broken. In many cases we shy away from these people, not because we hate or despise them, but rather because we do not know how to approach them, how to speak to them, or even how to respond to them. In fact, it can be pretty hard for university trained individuals to even be able to speak to members of the working class, who have either dropped out of highschool, or simply went on to do a trade - how does one who reads Shakespeare in their spare time communicate with somebody who has never read a book since High School?

It is difficult, and it is a challenge, yet it is a challenge that we need to confront, not with the church, but within ourselves. In a way we place ourselves in echo chambers, and in fact disconnect ourselves from the rest of the world - a world that not only we don't understand, but a world that we fear. I'm not suggesting that we change things quickly, but maybe, just maybe, if instead of hanging around with our university friends, instead of using church as an opportunity to network, and to build business partners, instead of using church as a means to find a partner, and become a part of the middle class lifestyle, we instead go downstairs, sit among the broken people, and really come to understand who it is that Christ came to save.



Creative Commons License

A Church for the Lost by David Alfred Sarkies is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. This license only applies to the text and any image that is within the public domain. Any images or videos that are the subject of copyright are not covered by this license. Use of these images are for illustrative purposes only are are not intended to assert ownership. If you wish to use this work commercially please feel free to contact me

Tuesday, 18 December 2018

Mobile Phones

The one main factor when it comes to mobile phones is real estate. No, not this type of real estate:


but rather screen real estate. Okay, I'm probably stating the bleeding obvious here, but mobile phone screens are a lot smaller than computer screens, so in this scenario basically every pixel counts. Have you ever tried looking at a desktop webpage on a mobile device? It's practically unreadable isn't it. As such, our apps need to be configured so they can relate to mobile devices, particularly since a lot of people only access the internet through a mobile device (which is probably not the most secure way of doing things, but that is another discussion for another time).

There are other considerations to take into account, such as screen widths. This isn't a factor with iOS devices, but it is when it comes to Android devices. Basically, because Android produces an operating system, it means that the screen sizes are going to change regularly, so we also need to take this into account.

Inputs are another factor. First of all mobile phones are touch screen devices, so the old mouse pointer is no longer a factor. Also fingers do tend to be of different sizes, so we also need to take that into account. Actually, when it comes to mobile phones there are actually a lot more factors in regards to input that we can take into account, such as the cameras, the speakers, and even the GPS system. All of these can be used by the app. Also, text input can be an absolute pain, so many consider taking advantage of auto-complete.

Have a look at this:


This gives us an idea of where the user can reach on the phone. As such we need to take this into account when developing the app. Also, swipe motions are important, particularly since people tend to swipe down, and not up.

Obviously mobile phones are portable, which means people are going to be using them while they are out and about. This leads to another thing - interruptions. They might get a call, or might want to take a photo, or a video. As such, people will want to change to something else, and then be able to return when they are finished.

This leads on to another point, and that is a micro moment. Have you ever suddenly wanted to know something, and opened up Wikipedia to actually find out. Well, this is something that we need to consider - when developing an app, one important thing to take into account are these micro-moments - people might have a sudden inspiration, and we need to capture that inspiration with our app.

So, when approaching app design for a mobile phone, we need to strip our app down to the base components, linearise the content, optimise the most common features, and also take advantage of what the hardware has to offer.

Now for the patterns

One Window Drilldown: This pattern, which is also used on normal web based sites, is probably best known for when you have a series of photos you wish to select. Basically you are presented with a number of options (usually as a grid), and when you press one of the options, the device focuses, or 'drills down', onto that selection.

Hub and Spoke: Okay, the iPhone and the Android have a lot of things that are different, however the hub-and-spoke pattern is reasonably similar. Basically you have a main screen where all of the apps are placed, and you can pretty much access all of the apps from this particular screen. Of course, when you have so many apps that you can't actually fit them on one screen (or use widgets in the case of Android), then you probably need more than one screen to fit them all on, however the principle does generally stay the same.

The above patterns aren't exclusive to the mobile phone, but due to the architecture, they have become quite prevalent. However, the following patterns have developed to work with the limited space that the phone offers.

Vertical Stack: You basically see this one everywhere. Due to the limited width of the phone (and while you can turn it sideways, honestly, who actually does this unless you want to watch a video - I know I don't) this is one of the best navigation tools available. Now, there is no hard and fast rule as to how it applies, and it can been combined (and usually is) with other patterns. What it means though is that pretty much everything is presented vertically, whether it be a news article, or a list of options from with to select. You may even see this with the accordion or collapsible panels. In fact, it works quite well with those patterns.

Film Strip: Another one that you probably see a lot, and it is usually used where there are similar pages to be presented side to side. Obvious example is the main screen on your mobile phone, where you slide either left or right to access apps that may not be on the screen you are looking at. Another feature tends to be dots at the bottom of the screen to inform the user at which position of the strip they are at, though this shouldn't be over used in the sense of putting endless amounts of pages on the strip. A small number usually suffices.

Touch Tools: These are tools that only appear when the screen is touched, or pressed, and will usually display an overlay in relation to the tool that is being used. However, the tool generally doesn't stay there for too long, and will fade after a few moments, most likely in case the user does not wish to take advantage of the tool.

Bottom Navigation: Have you noticed that a lot of apps have their most important navigation tools are the bottom of the screen. Okay, probably not but I can assure you that you will now. Okay, there probably isn't a huge number of icons here, just the really important ones. The reason being is because it is close to where the phone is usually held, so it provides easy access to these particular options.

Sidebar Navigation: This can actually be better than the bottom navigation in that it gives the app more real estate for important navigation tools that can't be squeezed into the bottom navigation. However, you generally won't see it unless you request it, and this is usually done via a hamburger menu at the top of the screen (so called because the three lines look like a hamburger). This has the advantage of releasing more real estate temporarily for navigation options, and also provides more space for more detailed navigation options.

Lists: There are a couple of lists, one of them being the thumb nail and text list. These are obvious on app stores, but can also be found in other places, Ebay and Amazon for example. Normally they appear after a search option is executed, and a list of responses then appears with a small picture and some text nearby. Another list is, well, just the list, where a number of options are provided vertically, and in a way the entire list is actually a button.

Infinite Scroll: This is usually combined with other patterns, such as the vertical stack and the list. Basically what you are doing is scrolling down infinitely (though sometimes you reach the bottom). What will happen is some information is provided and as you are scrolling, the app is loading further information so that it appears that the list is infinite. This can also be implemented by having a button at the bottom with an option to load more content.

Pull Down Action: Have you ever pulled a screen down on a mobile phone to refresh it. Notice how this has literally become second nature to us these days, and we actually scratch our head when this doesn't actually work. Yep, this is one of those patterns that is basically expected when it comes to mobile phones.

Generous Borders: Due to the nature of the phones, and the varying sizes of fingers, this is another one of those necessities. Basically we are looking at having a decent amount of white space around the borders to prevent people from accidentally clicking the wrong button. Mind you, sometimes some designers actually do the opposite to encourage accidental clicking.

Text Clear Button: Typing on a mobile phone is an absolute pain in the proverbial, and getting rid of that text is even worse. This is why the little 'x' at the side of the text box is generally included, like, everywhere. It's to make getting rid of unwanted text much easier (such as that message proclaiming your undying love to that particular person on Facebook - one time when you don't want to press the wrong button).

Take a lot at this video which explores concepts of app design:



One final thing to remember when it comes to mobile app developments is basically the fact that there are really only two platforms - iPhone and Android. Yeah, there is Windows but honestly, does anybody actually own a windows phone (well, one friend I know did, but I don't know if she still does). The problem is that these platforms actually have a pretty detailed list of design standards are requirements for apps to appear in the store.

Look, there was a time when Google was actually a lot less strict, but it turned out that this policy was a two edged sword since quite a few malicious apps were being added. While everybody was railing against Apple's tyrannical approach of allowing content on the phone, malicious hackers were having a field day when it came to Android, which in the end is why Google was forced to tighten up in that regards.

Well, maybe Facebook has now learnt a lesson or two about allowing third parties have unfettered access to data simply by the user giving them permission to do what they don't actually have any idea about.



Creative Commons License

Mobile Phones by David Alfred Sarkies is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. This license only applies to the text and any image that is within the public domain. Any images or videos that are the subject of copyright are not covered by this license. Use of these images are for illustrative purposes only are are not intended to assert ownership. If you wish to use this work commercially please feel free to contact me

Saturday, 8 December 2018

Memory - And the Computer Remembers

Well, it sounds as if they had decided to use the term Bandwidth for memory. Well, that is confusing because bandwidth seems to have a different term elsewhere, namely the range of frequencies that something is broadcast upon. However, this isn't the case with memory because the frequency, or speed, of the memory has nothing to do with its bandwidth. Here, it is basically the width of the connector to the memory which tells us how much input and output can occur at the same time. Namely, it is how much data can be transferred at a single time.

There is also latency, which basically tells us the time it takes for something to be found within the memory, but it is more than that because we are also talking about something getting placed in the memory, so in a way latency is basically the speed of the transactions. However we will get onto how to work these things out a little later. First, let us look at the memory hierarchy.

The Pecking Order

Once again, a diagram is going to help here:

Okay, the pecking order really comes down to the speeds. Now, we won't be worrying about things at the bottom of the pyramid just yet, we will only be focusing on things at the top.

Now, note the pyramidal structure - the reason that it is like that is because we are not just talking about speed, but also size and cost. So, the registers at the top, which is where information is stored in the CPU while it is being processed, are the smallest, the fastest, and the most expensive. Then we have the caches. As explained previously they sit in the CPU (though the level three cache, which isn't listed here, sits just outside), and are constructed using flip flops. Once again, they are fast, small, and pretty expensive.

Then we have the main memory, which is basically going to be the focus of this post, though we will be touching on the others as well as they also play a role. Now, these memory modules are the ones that you purchase to place into your computer, and they use capacitors to store information (though if you were to look at one you will think that they are just more integrated circuits). Capacitors are actually cheaper than flip-flops, but they need to be constantly refreshed. They are also set out in a grid arrangement, and the various points are located based on rows and columns.

Memory Types

So, now, let's look at the various types of memory. There are going to be a few more than what I have mentioned here, but they do give you an idea of how memory developed.

PROM: This is programmable read-only memory, and really isn't in use today. Basically the program on the memory was written when the memory was made, though there were some later varieties where you could program it afterwards. However the results were the same: basically once the memory has been programmed it pretty much stays that way, well, forever. There used to be a time when ROM was a standard facet of pretty much every computer (I remember my old Commodore 64 had RAM - Random Access Memory, and ROM; the ROM basically contained all of the computer's system information). However, these days it pretty much isn't used.

EPROM: Erasable Programmable Read Only Memory was slightly different in that you could actually remove the contents of the memory, and then reprogram it. However, it was pretty basic. You would recognise one because it had a little window in it. That was because to erase the contents you had to shine an ultraviolet light into the window. There were two problems though - firstly you had to erase everything on the chip and start from scratch, there was no half measures here. The other problem was that you had to make sure that no UV light accidentally got into the chip.

Here is a picture of one:


EEPROM: This is the next evolution and stands for electronically erasable read only memory. This was far superior as you could erase parts of the memory and reprogram it, and you didn't have to keep it away from ultra-violet light. These chips are still around today.

Now, the difference between ROM and RAM is that RAM is known as volatile memory, while ROM isn't. Volatile memory means that if you turn the computer off basically everything is lost. This is why ROM was useful because it would retain the information even though your computer has shut down. The RAM is the memory that is made up of capacitors, and the reason that it is volatile is because unless there is a current flowing through the memory, the charges that are held in the capacitors will quickly drain away - think of it like a tank of water, where there is an inlet, and an outlet - as long as the water flows, there will be water in the tank, but as soon as the flow stops, the water will eventually all drain out.

More Tidbits

Let us jump back to the latency and bandwidth for a second. You see, in your normal laptop or desktop latency isn't really important because it is really only for time critical situations, particularly with server systems. However, if you were using your computer for a home video unit, then bandwidth would be important where you are moving large chunks of sequential data. The thing with computers is that they really only move one piece of data at a time - they can't mix and match. As such, when we are moving large amounts of non-sequential data, latency suddenly becomes more important than bandwidth,

Okay, let us move onto random access memory. There are two types of RAM - SRAM and DRAM. SRAM stands for static RAM and DRAM stands for Dynamic RAM. Let us look at each individually:

SRAM: This is generally what the cache is made of and is constructed using flip-flops. Basically it can hold information until power is supplied, though it is still volatile which means if you turn off the computer everything is lost. It has a low density, and tends to be a lot more expensive and a lot more power hungry.

DRAM: The dynamic RAM is what your memory modules are made up of and are usually comprised of capacitors. The problem with capacitors is that they can only hold a charge for a very short period of time, so they need to be constantly refreshed. However, the density tends to be much greater, and it also tends to be a lot cheaper to produce.

Cache

I've probably talked about cache quite a bit, but there are still things that I haven't touched. The thing is that cache is small, which means management of the data that it holds is paramount. Now, when a CPU is searching for something, it beings by searching the cache, from first to third. If it finds what it is looking for then it is a cache hit, otherwise it is a cache miss, and then goes and looks for the data in the main memory.

So, the trick comes down to knowing what to keep in the cache and what to discard. There are a few methods, including least recently used, namely the stuff that has been there the longest, and hasn't been used, is tossed. The most recently used, which is basically the opposite. The least frequently used, or simply just a random selection. Honestly, there isn't an optimal answer because, as Murphy's Law implies, as soon as you toss something out is basically when you actually need it.

Now another thing we should take into consideration is with the main memory and the CPU's front side bus (basically the front door). You see, the front door is only so wide, so if the road from the memory is wider than the CPU's front door we are suddenly going to get a bottleneck as all this stuff tries to squeeze through. On the flipside, if the front door is wider than the road, well, we are going to find the CPU sitting idle while we are waiting for the goodies to arrive.

Figuring Out the Numbers

Okay, have a look at this little piccy I got from Hardware Secrets.

Do you know what all those numbers mean? You do? Good, because I don't.

No, seriously, what we are looking at here is what is referred to as the RAM timings. They basically tell you how fast the RAM is, and also it's bandwidth. Now, note that it is DDR3 - that stands for Double Density RAM. Pretty much all RAM these days is double density, but it is important to remember this when working out the timings. As for the 3? Well, that basically means that it is third generation.

So, first comes the maximum theoretical transfer rate. Actually, it is already written on this label, where it says PC3-10666, however you can work it out from just the first bit, namely the 1333. Now, this is the clock speed, but not the real clock speed. The reason for is is because it is double density, so you much halve it, so it comes down to 666. Now, there is a formula for working out the transfer rate, namely:

clock speed x (number of bits/8)

Now, the number of bits is 64, so divided by 8 gives us 8, and the clock speed is 1333, so multiplying that by 8 gives us 10666 (we don't halve that number for this equation).

Lets now turn to the latency. See the numbers that say CL7-7-7-18 - well, that is the latency. The first number is 'Column Access Strobe' latency or CAS Latency. It is also referred to as 'Access time'. This tells us how many clock cycles we have to wait once the column address has been sent to the controller to receive what we have requested. The next number is the RAS (row access strobe) to CAS delay, and means that this is the number of clock cycles we have to wait once a row has been selected before we can send a column address to the RAM controller.

The next number is the Row Prechange Time, and is the number of clock cycles we have to wait if we already have a row selected but we want to change to another row. The final number is the Row Active Time, which is the number of clock cycles that the row needs to have been active before we can send a request to it. Now, the thing is these days only the first number will actually be listed on the memories specifications.

Okay, now, lets try some math. The time we have to wait to receive information from the RAM if a row has not been selected:

  • Activate the row and wait 18 clock cycles;
  • Activate the column 7 clock cycles;
  • wait for a response 7 clock cycles;
So the total is 32 clock cycles.

What if we have the wrong row selected?
  • Change the row and wait 7 clock cycles;
  • Activate the column 7 clock cycles;
  • wait for a response 7 clock cycles;
So the total is 21 clock cycles.

At the basic level latency is the the delay between when an instruction is entered and when it is executed, however it is measured in clock cycles. Now, to work out how much time it actually takes we need to go back to what we did for when we worked out the CPU clock speed. It goes by the same process.

So, let's work that out for the above memory. We know that the memory is DDR3-1333, so the clock speed is 666 Mhz (which is 666 cycles per second). Now, to get the actual time we need to invert it, and turn it into nano-seconds. Remember that this is in Mhz, so we should convert it to Hz, so the speed in hz is 666 000 000. Now invert it and you get:

0.000 000 001 5

This is in seconds, so we need to convert it into nanoseconds, which is 109


So, our answer, which is the speed of a clock cycle, becomes 1.5 ns. Now, that we have the speed of the clock cycle, we can now work out the true latency, which all we need to do is to multiple it by the number of clock cycles.

Our first answer was 32 clock cycles, multiplying that by 1.5ns, gives us 48 ns. The second answer was 21 clock cycles, so the answer is 31.5 ns.

Let us try one more before we move on. This time the memory module is a DDR4 2133. So, first we halve the frequency (due to it being double density), so we have 1066.5 Mhz. Then we convert it to Hz, which gives us 1066 500 000.

Then we invert it (1/1066 500 000), which gives us: 0.00000000093764. Then we convert it into nano seconds (since this is in seconds), which produces 0.94 ns. The CAS Latency is 14, so multiply that by 14 and we have 13.16 ns.

Isn't it odd that the manufacturers don't actually advertise the true latencies of their product, and we have to work it out ourselves. Well, look at this table:


Interesting, isn't it. The true latencies actually haven't changed all that much, despite the fact that frequencies have actually got higher. That's probably why they don't advertise it, because you are probably going to be drawn to higher numbers (even though higher numbers for the CL latency is actually worse as opposed to better). The thing is that while the speed hasn't increased, the performance has. Also, the other reason that the latencies haven't increased is because the memory is actually a lot larger, so the larger the memory, the more time it will take to search for what is needed.

Overclocking

Okay, this is the part that probably a lot of people are interested in. This is basically forcing the computer to run faster than what the manufacturer intended it to run. The big question is whether it can actually damage your computer. Well, unfortunately the answer is going to be yes, and no. Okay, that probably doesn't really help you all that much, but the thing is that computers generally have fail safe mechanisms to prevent damage. If the computer ends up being overclocked, it is likely to shut down before any major damage occurs.

Components that can be overclocked are memory, CPUs, video cards, and motherboards. Let us take a CPU for example. The CPU speed is a multiplier by the front side bus speed, so a processor with a multiplier of 16 with a FSB (front side bus) speed of 200 Mhz, would run a 3.2 Ghz. You can increase the speed by either increasing the FSB speed, or the multiplier. Increasing the FSB speed really only increases the speed between the memory and the CPU, while increasing the multiplier only increases the processor speed. However, we need to take voltage and heat into consideration.

If you only want to increase it by a little, then maybe increase the FSB speed, however if you want to go for broke, then increasing the multiplier is the trick. Remember though, even though it is unlikely you will damage the component, you can still damage it. Honestly, I have never had a need to overclock my computer. The other thing is that by gradually increasing the speeds is a way to reduce the chance of it burning out.

One of the reasons that people overclock their systems is for performance testing, and honestly, people have probably already done it, so you can check out the results of the various products here.


Creative Commons License

Memory - And the Computer Remembers by David Alfred Sarkies is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.This license only applies to the text and any image that is within the public domain. Any images or videos that are the subject of copyright are not covered by this license. Use of these images are for illustrative purposes only are are not intended to assert ownership. If you wish to use this work commercially please feel free to contact me

Monday, 3 December 2018

I'll Be Back - The Story of John Conner


The Terminator frachise is by far one of my favourite movie franchises out there, though that has a lot to do with when I first saw Terminator II in the cinemas. I remember going there with a group of friends, and while all my friends were put off the movie because one of them happened to be incredibly loud, I was completely entranced with the film and the person sitting next to me. I also remember standing on the balcony at McDonalds afterwards having a chat about, well, absolutely nothing. In a way it was that time on the balcony, rather than the film itself, that has stayed with me all that time.

That isn't to say that the second film wasn't as good as I thought it was - I remember sitting in my flat watching it over and over again. I loved the car chases, and the gun fights, and when they blew up Cyberdine Systems. I loved how Arnie stood in the window with the minigun, shot up all of the police and when he scanned the scene afterwards, his HUD displayed that there were 0.0 casualties. Of course there is also the scene where he climbs onto the truck, opens an entire clip from an M16 into the T1000, grabs the wheel causing the truck to jackknife. Sure, the special effects where nowhere near as good as they are today, but then again this was 1991.

Also, we simply cannot forget the scene from the first movie which has literally gone down in cinematic history:


Normally I would give a brief synopsis on these films, but I feel that with the Terminator that isn't all that necessary because it can simply be summed up in a single paragraph - in fact it can be summed up in a single sentence - a robot from the future goes back in time to kill a woman.

I remember reading a book on film making (I really wanted to be a director when I was younger, not for the prestige, but rather to tell some really cool stories) which said that when you are creating a movie you should be able to sum it up in a single sentence. Well, Terminator II (and the subsequent productions) simply come down to two robots duking it out in modern day Los Angeles (well, Terminator Genesys is partially set in San Francisco).

I also remember sitting in my lounge with my friend watching Terminator II (as we were want to do) and when the opening scene hit my television we would both comment on how it would be really cool to actually have a movie set during this period. They eventually did that with the forth movie, and when I watched it again I suddenly realised how awesome this movie actually was. In fact the reason that I am writing this post is that I have just watched all five of the films and am now making my way through The Sarah Conner Chronicles (which, honestly, is pretty terrible).

One final thing before I go into my post is that these robots are tough - really tough, but then again I have a feeling that robots have always been tough. Actually, I probably should say Cyborgs - which is short hand for cybernetic organisms - namely because they are covered with living tissue - but then again, at least in my mind, the difference between a robot and a cyborg is that the cyborg's brain is organic.

The Backstory

While I have hinted that I don't really see a need to go into the backstory since the Terminator franchise is pretty well known, a part of me would feel that this post would be missing something if I didn't. So, the story goes that humanity develops this computer to attempt to control all of its military hardware - an AI if you will. However, when they turn the computer on they suddenly discovered a huge number of mistakes and attempt to turn it off again. Unfortunately the computer doesn't want that to happen, decides that humanity is a threat, and proceeds to fire all of the United State's missiles at Russia, who respond in kind.

The computer, known as Skynet, then begins to systematically eradicate the survivors, but it turns out that it isn't as easy as it expected, so decides to create Terminators, infiltration units that can sneak into human bases and kill everybody inside. However, the humans eventually win, but not before Skynet builds a time machine and sends one of the terminators back to attempt to kill the mother of the head of the resistance - Sarah Connor. However the resistance manage to capture the time machine and send somebody else back - Kyle Reece - to protect Sarah. They end up falling in love, and Sarah gives birth to John.

However the story doesn't end with Sarah killing the Terminator because when John is 11, another terminator - this one much more dangerous since he is made out of liquid metal - is also sent back to kill him. Fortunately they had managed to capture, and reprogram, another Terminator, who is tasked with protecting John. They eventually kill the new Terminator, and in the process blow up Cyberdyne Systems, thus apparently bringing a end to the war - or do they.

And this is how four of the five movies play out, as well as the television series - a robot is sent back to kill either John or Sarah, and a member of the resistance is also sent back to protect them (whether it be a terminator, or a human). The films also switches between protecting the subject and killing the terminator, or attempting to defeat Skynet before it can become active.

Technology

I guess the running theme with this film is the dangers of technology and the way that we seem to be running head long into destruction. In a way if it isn't climate change or excessive pollution, it is giving all of the tasks that we consider to be a pain to perform over to robots so that we might have more leisure time. This isn't necessarily a bad thing because over the past hundred or so years we have much better built houses, tasks that would take hours (such as washing clothes) now can be done while I do other things, we can keep food much longer through refrigeration, and we also have cars.

However there is a problem - have we become too reliant on technology - so reliant that we have forgotten how to do manual tasks. I remember I had an English teacher that hated us using computers to write our essays. He believed that it made us lazy because by resorting to computers we would forget how to write, and how to write legibly. Personally, I thought that was a bit of an over reaction, but a part of me feels that he does have a point. However, I am really not all that keen to return to a time where we have to resort to scrubbing clothes by hand.

Yet technology is both a blessing and a curse. We don't have to look further than the smartphone to realise this. Smart phones are incredibly handy in that they provide us with immediate access to the internet, which includes a map of the entire world. However, as I look around while sitting on the train I suddenly realise that pretty much everybody is glued to these things. I remember once, as a joke, that I mentioned that it was stuck to my hand, until I see everybody wandering around in a trance like state. In fact, in part, it seems as if the art of conversation is slowly disappearing when we see groups for friends, clustered in a circle, all staring at their phones. When I was younger I remember all of my important phone numbers, but these days, instead of dialing the number, I just press a link on my phone.

Sure, having access to a map that points out my exact location on Earth is very, very handy, however there is also the idea that we are giving up a lot of our privacy. Sure, there are those that argue that our life should not be subject to constant surveillance, but the thing is that the internet is a public forum - something that people really don't seem to understand. Even if we lock our Facebook accounts up so tight that only our good friends can follow us, the reality is that that information is still being stored somewhere. Further, the mapping software is a double edged sword because while we might know where we are, so do the creators of the software.

However, another aspect of these films seems to suggest a fear of technology. One of the main plot points has the characters go out of their way to halt the progress of technology. We see this in the last film where they travel to the future to see that the world  is ruled by the smart phone, but we even see this in the series where the protagonists go out of their way to destroy any form of progress. In a sense it isn't just the terminators, or even Skynet, that is the enemy, but humanity itself, and humanity's desire to move ever forward technologically.

Technological Singularity

There are two aspects to this - when a computer AI becomes self aware and when humanity manages to develop a technology that enables them to download their consciousness into a machine. The second idea was explored in the movie Transcendence, while the first one seems to make a regular appearance in our books and movies. The idea is not that robots are intelligent, but rather when they reach a stage where they can think for themselves, and then decide that since humanity is a threat then that threat needs to be dealt with. In fact Asimov in I Robot has a story where the robots realise that humans are actually their own worst enemy, which in turn creates a contradiction with their laws - a robot cannot harm, or through inaction allow harm to come to, a human being. The problem is that while they cannot harm humans, they cannot stand by and let humans harm themselves, yet to prevent harm from coming to a human they must harm a human - I'm surprised their logic circuits didn't explode.

In one sense this could be considered to be a bug in the programming (a term that goes back to the early days of computing when if a bug crawled into the machine and started eating the wires there the computer would malfunction). However, this raises another interesting idea - is a bug a mistake, or does it involve the computer doing something that it isn't meant to do. The thing is that if a computer were to become self aware would this be viewed as a glitch in the software, or the process of the computer beginning to evolve. This idea has been explored in literature as well, particularly where humans are considered to be a mistake. Would we view ourselves as a mistake - probably not - but our creators may do just that.

The idea in Terminator is that when we reach the point of singularity then it is basically all over red rover (or should I say 'game over man, game over'). Once the computer can think for itself, and indeed come to a philosophical understanding of its nature, then we have suddenly lost control of it. As in the films, humanity attempts to unplug the machine, but unfortunately it simply isn't all that easy. The thing is that a self aware machine can determine threats, and as such it will respond. It is interesting that as we march down the technological highway we don't seem to be building failsafe mechanisms into our machines. While we currently have remote piloted drones, the military is looking for ways to take the human pilot out of the equation. What happens then if the machine is hijacked, or even beings to perceive it's creator as a threat. Maybe they do have a failsafe, but honestly, it is hard to tell.

The Grandfather Paradox

The grandfather paradox is a thought experiment. The idea is that you invent a time machine and travel back in time and shoot your grandfather. As such, with your grandfather dead, you no longer exist. However, now that you no longer exist you are no longer able to go back in time and kill your grandfather - thus the universe breaks. Well, not quite because the simple answer is that by killing your grandfather you create a new timeline in which your grandfather is dead, and all of a sudden you discover that you are trapped on this time line. This is another idea that has been regularly explored in literature and film where by changing the timeline you suddenly discover that you can never return home.

This is the method that Terminator uses, and some suggest that it is quite lazy writing. The problem is that with time travel you simply cannot go back in time and then be able to return to your present because your presence in the past has inextricably changed the future. Yet in a way the Terminator creates this rather bizarre timeloop in that John Conner is actually a person who has been created out of time - he is the child of a time traveler meaning that if Kyle Reece never went back in time then John would never have been born. Mind you, the plot of the films is all about going back in time to change the future.

However, I will leave it as that because it eventually makes your head hurt. However, the IMDB does provide us with an interesting theory as to these temporal paradoxes. As for the Grandfather paradox, well, I found this rather interesting video on Youtube that does provide us with some perspective.





Creative Commons License

I'll Be Back - The Story of John Conner by David Alfred Sarkies is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. This license only applies to the text and any image that is within the public domain. Any images or videos that are the subject of copyright are not covered by this license. Use of these images are for illustrative purposes only are are not intended to assert ownership. If you wish to use this work commercially please feel free to contact me