chaimoosh.github.io


Java Basics

As I continue looking for a job I am trying to also gain new skills to build on the one’s that I learned already. I decided that learning Java would be a way to up my skills and make myself more marketable. The rules of Java are similar to those of Ruby in the sense that it’s also an object oriented programming language so you’re basically dealing with the same stuff. The differences though stand out right away though. First of all Java needs to be compiled and while I’m still not sure what exactly that means at a deep level I do know that it means I can’t use the familiar text editors I was working with until now like atom and move to eclipse which is a Java IDE. Another difference that struck me is that rather than just declaring variables like you would in Ruby in Java you need to say what the variable is going to contain for example if you want a variable that will have an integer when declaring that variable you have to say that it will hold an integer.


Javascript Closures

In Javascript one of the things you come across is a closure. The idea of it is that you have variables throughout your program but you don’t want all your variables to be accesible everywhere because that can lead to strange bugs that are hard to trace like if you tyr to declare a variable that has already been declared or change a variable that was declared with const so in order to avoid that you make a closure. The way to make a closure is that inside any function that function has access to everything that was declared outside of it and anything declared inside of it but the ones that are declared inside of it can only be accessed by that function and not anywhere else in the program. So by declaring a variable inside a function you create a closure because it cannot be accessed outside of that function.


About Salesforce

As I continue in my job search I keep getting exposed to new ways to put what I learned in the course to use. I found out about salesforce which is one of the biggest software companies in the world. They make a CRM platform which is a way for companies to keep track of sales and clients but it also does so much more than that. In salesforce everything really goes back to a database which becomes an object so this was just like object oriented programming in Ruby that I learned in the course. It also goes into a database which can be called with regular SQL queries. And then all these things that you make can be displayed on the front end with components which are similar to React components. All this is what comes out of what I learned in the course that makes it so much easier to understand all these concepts.


More CSS Styling

So as I continue in my job search one of the things I’m trying to do is add to my portfolio. One of the things that I found I was lacking was styling in most of my projects so I decided to build something that was more style with CSS and less back end stuff. I decided to try to build a website for my wife’s business. I started by trying to use some bootstrap layout stuff I found that to be pretty useful. Than I remebered that while I was doing the course I saw in a video a great utility that there is on mac’s to fid the hexadecimal color of anything on the screen of the computer. So I googled it and found that it’s called Digital Color Meter and it’s in the utilities folder so I was able to find some cool colors to use on the website.


Blockchain

Blockchain is what’s behind bitcoin and all other cryptocurrencies and here’s a brief overview of how it works. The basic idea is that there has to be some way to keep everything secure. The way this is done is that you make it that every elemet has a hash that is almost impossible to hack. The way this is done is SHA256 which takes data and makes a hash out of it but if even the slightest thing changes in the data the hash that’s made is completely different. So first every element has a hash based on the data inside of it. Next what you do is you make every element know about the previous element by storing the previous hash inside of it. Now if you try to change anything within any of the elements on the chain you mess up the entire thing because you change the hash of that element and then if you check it against what’s in the next element it will show that the data was corrupted. Another way the data is kept secure is by having copies of the database with all the blocks in them stored in multiple places and every time a change is made it updates everywhere and the if anyone tries to corrupt the data in one the other ones will show that it was played with and it will be stopped.