diff --git a/entries/Java/testing-my-server.md b/entries/Java/testing-my-server.md deleted file mode 100644 index d0115db..0000000 --- a/entries/Java/testing-my-server.md +++ /dev/null @@ -1,14 +0,0 @@ -#THIS IS A H1 - -This page is merely for testing -- go away - -``` -int i = 0; -``` - -##This is a h2 - -``` -python3 roosay.py -``` -This is just to test what a paragraph looks like. \ No newline at end of file diff --git a/entries/hardware/ddr4-ram-introduction.md b/entries/hardware/ddr4-ram-introduction.md new file mode 100644 index 0000000..aac4522 --- /dev/null +++ b/entries/hardware/ddr4-ram-introduction.md @@ -0,0 +1,50 @@ +Overview +-------- + +DDR4 ram is the successor to DDR3 ram and has many benefits. DDR3 ram is +currently what most computers use, and it came out in 2007. + +What DRR4 Stand for: +-------------------- + +Double Data Rate Fourth Generation Synchronous Dynamic Random-Access Memory + +DDR4 achieved higher efficiency +------------------------------- + +DDR3 ram operates on 1.5 volts where DDR4 ram only uses 1.2 volts. This 20% +reduction on power is important in large databases where it can save millions of +dollars. Also, a reduction of power consumption improves battery life in smart +phones and laptops. + +DDR4 performance +---------------- + +DDR4 ram has the transfer speed of 2133 MT/s – 4266 MT/s. + +DDR3 ram has the transfer speed of 800 MT/s – 2133 MT/s. + +Due to the increase in DDR4’s speed it can supports more powerful processors. + +The cost of DDR4 ram +-------------------- + +Currently the cost of DDR4 ram is preventing many people from getting it. As of +3/6/15 16 GB of DDR4 ram costs about \$205. That is high considering that DDR3 +only costs \$130 for 16 GB of ram. Not only does DDR4 cost more, you also need a +DDR4 compatible motherboard and processor which are only produced by Intel right +now (as of 3/6/15). + +i7 5820K Intel processor \$390 + +Intel DDR4 motherboard \$244 + +16 GB DDR4 ram \$275 + +In conclusion +------------- + +I would not recommend shelling out money for DDR4 until prices fall in 2016. The +typical user would not notice any tangible benefits by upgrading to DDR4 ram at +this moment. Although the speed bump is nice, you probably will not notice the +difference unless you are a high end user. diff --git a/entries/hardware/hard-drive-speeds.md b/entries/hardware/hard-drive-speeds.md new file mode 100644 index 0000000..a487eaa --- /dev/null +++ b/entries/hardware/hard-drive-speeds.md @@ -0,0 +1,36 @@ +Many people don’t realize that the slowest part of their computer is the hard +drive. The read and write speeds of a hard drive affects the computer’s +performance. The most affected processes are the boot time and time it takes to +open an application. + +Experiment +----------- + +I decided to explore the speed differences between several types of hard drives. +In all the trials I used a program called Parkdale for speed measurements. +\*Please note that these are just the hard drives I had lying around, there can +be great variation of performances between different manufacturers. + +5400 RPM Toshiba Laptop HHD +--------------------------- + +7200 RPM HHD +------------ + +Samsung 840 EVO SSD +------------------- + +Kingston SSD +------------ + +Conclusion +---------- + +It may be easy to conclude that SSDs are fast and you should just use those. +However, there is a time and a place for each of these HHDs due to their price +point. It would cost a ridiculous amount of money to have two terabytes of SSD +storage on my computer. My main computer has 120 GB SSD for my installation of +Linux and a 2 TB HHD for all my personal files. In this case I get the best of +both worlds. On one hand I get incredibly fast storage for all my programs which +depends on read and write speeds of the HHD. On the other hand I get relatively +cheap storage for all my movies and pictures. diff --git a/entries/java/bash-usr-bin-java-cannot-execute-binary-file.md b/entries/java/bash-usr-bin-java-cannot-execute-binary-file.md new file mode 100644 index 0000000..39ad39e --- /dev/null +++ b/entries/java/bash-usr-bin-java-cannot-execute-binary-file.md @@ -0,0 +1,7 @@ +bash: /usr/bin/java: cannot execute binary file +----------------------------------------------- + +When you get this error, it means that you are using the wrong version of JDK to +run a specific java file. To fix this you must uninstall your current version of +JDK. Next you must install the correct architecture of JDK. This for most people +means install the 64-bit version of JDK. diff --git a/entries/java/top-three-recommended-java-ides.md b/entries/java/top-three-recommended-java-ides.md new file mode 100644 index 0000000..3a88875 --- /dev/null +++ b/entries/java/top-three-recommended-java-ides.md @@ -0,0 +1,50 @@ +An IDE (Integrated Development Environment) is a single program that wraps +everything you need to program with. An IDE usually consists of a code editor, +debugger, and a compiler. A good IDE can make you more productive. Without a IDE +you would be stuck writing all of your apps in notepad and compiling via command +line – which is not bad for learning how to program. A good IDE has syntax +highlighting which makes the code easier to read and error highlighting which +makes finding that missing semi colon easier. Here is a list of three IDEs that +work well for me. + +NetBeans +-------- + +NetBeans is the most productive IDE for large java projects. NetBeans is great +at detecting errors in your code. You can also have multiple projects open in +the same window which is great for anyone who is constantly flipping between +projects – even if they are in different coding languages. This is a must have +program for everyone looking to develop Java. This program also supports PHP, +JavaScript and C/C++. + +Eclipse +------- + +Eclipse is a very popular programming IDE; however, it is harder to use than +NetBeans. The largest benefit of Eclipse is that it has tons of templates for +you to use. Eclipse also has a better GUI creation tool than NetBeans has. + +JCreator +-------- + +I want to warn you that this is a old IDE. You hate yourself if you decide to +use this program. The only reason I am putting this on my list is because I +think it is great for teaching people how to program – it’s what my high school +used. Unlike Eclipse and NetBeans, it gives you very little help when writing +your code. There is no autocompletes or dropdowns when you are accessing members +of an object. This does not even give you red highlights when you have a syntax +error. What it instead shows you is the errors that you would receive in the +command line when you compile this project. This is great for AP Computer +Science students who have to memorize/learn what certain errors mean. + +Intellij +-------- + +\*Update 2018 + +I have converted to a full time Intellij user since writing this article in +2015. This program is simply fantastic in every aspect – expect ram usage. If +you have never heard of Intellij or any of the other JetBrains products I would +highly recommend you check them out. The main reason I switched was because +Intellij could scale nicely to 4k and NetBeans did not. The user experience +overall feels nice. diff --git a/entries/other/should-you-run-a-server-on-desktop-hardware.md b/entries/other/should-you-run-a-server-on-desktop-hardware.md new file mode 100644 index 0000000..3040d9b --- /dev/null +++ b/entries/other/should-you-run-a-server-on-desktop-hardware.md @@ -0,0 +1,21 @@ +Short Answer +------------ + +The short answer is: yes, if it is not on an enterprise site. + +Long Answer +----------- + +I have hosted numerous servers on old desktop hardware, there is nothing wrong +with this. Old computers can make excellent file, Minecraft, and web servers. +However, if you are honestly asking the question “should you run a server on +desktop hardware” it implies you are running something important. Don’t get me +wrong, running a Minecraft server is **very** important, however, it is not as +important as a production web server for a larger company. In that case it is +better to have an actual server with redundant power supplies and hot swappable +hard drives. + +Another factor to seriously consider is your internet speed. When I was in +seventh grade I ran an apache web server on my old computer. Since I was running +on DSL, the website loaded like it was 1990. If you need high bandwidth, I would +recommend you get a VPS at Digital Ocean. diff --git a/entries/other/ways-to-avoid-getting-hacked.md b/entries/other/ways-to-avoid-getting-hacked.md new file mode 100644 index 0000000..7485743 --- /dev/null +++ b/entries/other/ways-to-avoid-getting-hacked.md @@ -0,0 +1,39 @@ +Please note that these are just personal recommendations, and this article was +written in 2014. + +1. Avoid bad websites. + +2. Have a good antivirus – Malwarebytes is pretty good. + +3. Use a DNS filter like open DNS. + +4. Have a good firewall if you have a front facing IP address. + +5. Use Linux + +6. Avoid less reputable program downloads + +7. Use a VPN on public networks + +8. Use a password manager for storing passwords + +9. Disable Flash + +Linux +----- + +Using Linux is not a guarantee way to prevent yourself from getting hacked. +However, the way the system partitions memory makes it harder for viruses to +gain root control. Nothing is preventing a virus from infecting a Linux machine, +especially if you were the one who downloaded it and gave it permission. The +likelihood of you stumbling on a Linux virus is less likely because most people +write viruses for windows machines. There is a ton of viruses on websites that +use JavaScript and Flash that can affect every operating system. + +VPN +--- + +Please be smart when using a VPN. Personally, I don’t trust any free VPN or +proxy since it opens the door for a man in the middle attack. If you are +genuinely concerned about your privacy I would use a personal VPN server is +hosted at a place like Digital Ocean. diff --git a/entries/programs/installing-all-your-programs-at-once-with-ninite.md b/entries/programs/installing-all-your-programs-at-once-with-ninite.md new file mode 100644 index 0000000..5844524 --- /dev/null +++ b/entries/programs/installing-all-your-programs-at-once-with-ninite.md @@ -0,0 +1,7 @@ +If you are anything like me, you find yourself installing windows a lot. It is +always annoying to have to run to a dozen websites just to get your basic +programs installed. To avoid this – and internet explorer – I use Ninite to +install a batch of programs at once. The program is simple, you just go to their +website and check off the programs you want and run their executable. + +![A screenshot of a cell phone Description generated with high confidence](media/90e4464eb85c998c8db42c965468aa54.png) diff --git a/entries/programs/media/90e4464eb85c998c8db42c965468aa54.png b/entries/programs/media/90e4464eb85c998c8db42c965468aa54.png new file mode 100644 index 0000000..d79cea2 Binary files /dev/null and b/entries/programs/media/90e4464eb85c998c8db42c965468aa54.png differ diff --git a/entries/programs/~$stalling-all-your-programs-at-once-with-ninite.md b/entries/programs/~$stalling-all-your-programs-at-once-with-ninite.md new file mode 100644 index 0000000..d0729fd Binary files /dev/null and b/entries/programs/~$stalling-all-your-programs-at-once-with-ninite.md differ diff --git a/entries/projects/ackermann-function-written-in-java.md b/entries/projects/ackermann-function-written-in-java.md new file mode 100644 index 0000000..21e7df0 --- /dev/null +++ b/entries/projects/ackermann-function-written-in-java.md @@ -0,0 +1,86 @@ +\`\`\` + +class Ackermann_function + + { + +    public static void main(String[] args) + +    { + +        //prints intro + +        System.out.println("This program will solve for all values in ackermann +function using recursion.1"); + +        System.out.println("\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*n"); + +        //calls for all values of ackerman using for loop + +  + +        for(int i = 0; i \< 6; i ++) + +        { + +            for(int j = 0; j \< 10; j ++) + +            { + +                System.out.println("Ackerman (" + i + "," + j + ") is: " + +ack(i,j)); + +            } + +  + +        } + +        //test sinlge + +        //System.out.println(ack(3,1)); + +    } + +    public static int ack(int m, int n) + +    { + +        if(m == 0) + +        { + +            return(n + 1); + +        } + +        else if(m \> 0 && n == 0) + +        { + +            return(ack(m-1,1)); + +        } + +        else if(m\>0 && n \> 0); + +        { + +            return(ack(m-1, ack(m,n-1))); + +        } + +    } + +  + + } + +\`\`\` + +The Ackermann function is a classic example of a function that is not primitive +recursive – you cannot solve it using loops like Fibonacci. In other words, you +have to use recursion to solve for values of the Ackermann function. + +For more information on the Ackermann function [click +here](https://en.wikipedia.org/wiki/Ackermann_function). diff --git a/entries/projects/batch-minecraft-launcher-with-auto-restart.md b/entries/projects/batch-minecraft-launcher-with-auto-restart.md new file mode 100644 index 0000000..745784e --- /dev/null +++ b/entries/projects/batch-minecraft-launcher-with-auto-restart.md @@ -0,0 +1,37 @@ +\`\`\` + +\@echo off + +color a + +title server Name + +  + +:startServer + +echo starting server + +echo (%time%) + +java -Xmx1024M -jar caftbukkit.jar -o true + +  + +echo (%time%) WARNING: Minecraft server closed or crashed, restarting + +ping 127.0.0.1 -n 5 + +goto startServer + +\`\`\` + +This batch script great for Minecraft servers which frequently crash – for +whatever reason. If you want to learn more about how this script works I would +recommend that you look up a batch tutorial online. This script is just a big +loop which restarts whenever the server crashes. If you like to use this, just +copy and paste it into a batch file (ends with .bat) and make sure that it is in +the same directory as your Minecraft server. Also, the “craftbukkit.jar” should +be the name of the jar file that you use to run your server. + +Happy mining. diff --git a/entries/projects/java-fibonacci-solve.md b/entries/projects/java-fibonacci-solve.md new file mode 100644 index 0000000..1ec40a4 --- /dev/null +++ b/entries/projects/java-fibonacci-solve.md @@ -0,0 +1,57 @@ +The Fibonacci Sequence is a series of numbers where the next number is found by +adding the previous two numbers. + +Ex: + +| n | 1 | 2 | 3 | 4 | 5 | 6 | +|---|---|---|---|---|---|---| +| x | 1 | 1 | 2 | 3 | 5 | 8 | + +\`\`\` + +class Fibonacci + +{ + +   public static void main(String[] args) + +   { + +       for(int i = 1; i \< 60; i ++) + +       { + +               System.out.println("Fibonacci " + i + " is: t" + fib(i)); + +       } + +   } + +//recursive definition of bibonacci + +   public static double fib(int n) + +   { + +       if(n == 1 \|\| n == 2) + +       { + +           return(1); + +       } + +       return(fib(n -1) + fib(n -2)); + +   } + +} + +\`\`\` + +![](media/088cc48e754c1b99e0fcd5a5eddb9d64.png) + +I would like to note that solving each Fibonacci number recursively is not +efficient due to the enormous stack it creates for higher elements. A more +effective way to calculate the Fibonacci sequence is iteratively. I only did +this recursively to demonstrate its recursive nature. diff --git a/entries/projects/media/088cc48e754c1b99e0fcd5a5eddb9d64.png b/entries/projects/media/088cc48e754c1b99e0fcd5a5eddb9d64.png new file mode 100644 index 0000000..516fbbf Binary files /dev/null and b/entries/projects/media/088cc48e754c1b99e0fcd5a5eddb9d64.png differ diff --git a/entries/projects/media/09d34d523359111041accf89c82fd6c2.png b/entries/projects/media/09d34d523359111041accf89c82fd6c2.png new file mode 100644 index 0000000..b597702 Binary files /dev/null and b/entries/projects/media/09d34d523359111041accf89c82fd6c2.png differ diff --git a/entries/projects/media/13f1d6d93532bfb23a03a9a4fec5f41b.png b/entries/projects/media/13f1d6d93532bfb23a03a9a4fec5f41b.png new file mode 100644 index 0000000..74b1c34 Binary files /dev/null and b/entries/projects/media/13f1d6d93532bfb23a03a9a4fec5f41b.png differ diff --git a/entries/projects/media/ad84021445feb7021f2320f6be599ef5.png b/entries/projects/media/ad84021445feb7021f2320f6be599ef5.png new file mode 100644 index 0000000..5490fa8 Binary files /dev/null and b/entries/projects/media/ad84021445feb7021f2320f6be599ef5.png differ diff --git a/entries/projects/media/d3f05acc1973ea938920407511c28bff.png b/entries/projects/media/d3f05acc1973ea938920407511c28bff.png new file mode 100644 index 0000000..9a962de Binary files /dev/null and b/entries/projects/media/d3f05acc1973ea938920407511c28bff.png differ diff --git a/entries/projects/media/fc0a0ddf2a914b171bb3a5013e9e7b6c.png b/entries/projects/media/fc0a0ddf2a914b171bb3a5013e9e7b6c.png new file mode 100644 index 0000000..778b8df Binary files /dev/null and b/entries/projects/media/fc0a0ddf2a914b171bb3a5013e9e7b6c.png differ diff --git a/entries/projects/musical-floppy-drives.md b/entries/projects/musical-floppy-drives.md new file mode 100644 index 0000000..1b3a19b --- /dev/null +++ b/entries/projects/musical-floppy-drives.md @@ -0,0 +1,3 @@ +![video]() + +A more detailed description of how I made this will be coming soon. diff --git a/entries/projects/timelapse-programming-pong.md b/entries/projects/timelapse-programming-pong.md new file mode 100644 index 0000000..6dd0596 --- /dev/null +++ b/entries/projects/timelapse-programming-pong.md @@ -0,0 +1,15 @@ +![video](https://youtu.be/5OZfKYzYHPM) + +Downloads: + +[Demo Source Code](http://jrtechs.net/download/180/) + +![A screenshot of a computer screen Description generated with very high confidence](media/ad84021445feb7021f2320f6be599ef5.png) + +[Extreme VB Pong](http://jrtechs.net/download/70/) + +![A picture containing screenshot Description generated with high confidence](media/fc0a0ddf2a914b171bb3a5013e9e7b6c.png) + +[Extreme VB Pong Source Code](http://jrtechs.net/download/182/) + +![A screenshot of a computer screen Description generated with very high confidence](media/13f1d6d93532bfb23a03a9a4fec5f41b.png) diff --git a/entries/projects/timelapse-programming-zombie-game.md b/entries/projects/timelapse-programming-zombie-game.md new file mode 100644 index 0000000..d9a1aeb --- /dev/null +++ b/entries/projects/timelapse-programming-zombie-game.md @@ -0,0 +1,20 @@ +![video](https://www.youtube.com/watch?v=KC9zrgMt1FA) + +This is a simple zombie shooter game that I made in visual basics. The graphics +are very basic due to copyrights that I wanted to avoid – and lack of artistic +abilities. However, this game is meant to be a demo so that you can learn +something from what I did. If you enjoyed this feel free to download the source +code (linked below). + +The music used in the video was called Aurora Borealis and it was downloaded +from the YouTube Audio Library. + +Downloads: + +![A screenshot of a computer Description generated with very high confidence](media/d3f05acc1973ea938920407511c28bff.png) + +[Zombie Game YouTube demo](http://jrtechs.net/download/214/) + +![A screenshot of a computer Description generated with very high confidence](media/09d34d523359111041accf89c82fd6c2.png) + +[Demo source code](http://jrtechs.net/download/211/)