Browse Source

Added blog posts from jrtechs.net

pull/4/head
Jeffery R 6 years ago
parent
commit
da47f46b9f
22 changed files with 428 additions and 14 deletions
  1. +0
    -14
      entries/Java/testing-my-server.md
  2. +50
    -0
      entries/hardware/ddr4-ram-introduction.md
  3. +36
    -0
      entries/hardware/hard-drive-speeds.md
  4. +7
    -0
      entries/java/bash-usr-bin-java-cannot-execute-binary-file.md
  5. +50
    -0
      entries/java/top-three-recommended-java-ides.md
  6. +21
    -0
      entries/other/should-you-run-a-server-on-desktop-hardware.md
  7. +39
    -0
      entries/other/ways-to-avoid-getting-hacked.md
  8. +7
    -0
      entries/programs/installing-all-your-programs-at-once-with-ninite.md
  9. BIN
      entries/programs/media/90e4464eb85c998c8db42c965468aa54.png
  10. BIN
      entries/programs/~$stalling-all-your-programs-at-once-with-ninite.md
  11. +86
    -0
      entries/projects/ackermann-function-written-in-java.md
  12. +37
    -0
      entries/projects/batch-minecraft-launcher-with-auto-restart.md
  13. +57
    -0
      entries/projects/java-fibonacci-solve.md
  14. BIN
      entries/projects/media/088cc48e754c1b99e0fcd5a5eddb9d64.png
  15. BIN
      entries/projects/media/09d34d523359111041accf89c82fd6c2.png
  16. BIN
      entries/projects/media/13f1d6d93532bfb23a03a9a4fec5f41b.png
  17. BIN
      entries/projects/media/ad84021445feb7021f2320f6be599ef5.png
  18. BIN
      entries/projects/media/d3f05acc1973ea938920407511c28bff.png
  19. BIN
      entries/projects/media/fc0a0ddf2a914b171bb3a5013e9e7b6c.png
  20. +3
    -0
      entries/projects/musical-floppy-drives.md
  21. +15
    -0
      entries/projects/timelapse-programming-pong.md
  22. +20
    -0
      entries/projects/timelapse-programming-zombie-game.md

+ 0
- 14
entries/Java/testing-my-server.md View File

@ -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.

+ 50
- 0
entries/hardware/ddr4-ram-introduction.md View File

@ -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.

+ 36
- 0
entries/hardware/hard-drive-speeds.md View File

@ -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.

+ 7
- 0
entries/java/bash-usr-bin-java-cannot-execute-binary-file.md View File

@ -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.

+ 50
- 0
entries/java/top-three-recommended-java-ides.md View File

@ -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.

+ 21
- 0
entries/other/should-you-run-a-server-on-desktop-hardware.md View File

@ -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.

+ 39
- 0
entries/other/ways-to-avoid-getting-hacked.md View File

@ -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.

+ 7
- 0
entries/programs/installing-all-your-programs-at-once-with-ninite.md View File

@ -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)

BIN
entries/programs/media/90e4464eb85c998c8db42c965468aa54.png View File

Before After
Width: 1429  |  Height: 678  |  Size: 204 KiB

BIN
entries/programs/~$stalling-all-your-programs-at-once-with-ninite.md View File


+ 86
- 0
entries/projects/ackermann-function-written-in-java.md View File

@ -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).

+ 37
- 0
entries/projects/batch-minecraft-launcher-with-auto-restart.md View File

@ -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.

+ 57
- 0
entries/projects/java-fibonacci-solve.md View File

@ -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.

BIN
entries/projects/media/088cc48e754c1b99e0fcd5a5eddb9d64.png View File

Before After
Width: 367  |  Height: 726  |  Size: 27 KiB

BIN
entries/projects/media/09d34d523359111041accf89c82fd6c2.png View File

Before After
Width: 768  |  Height: 416  |  Size: 99 KiB

BIN
entries/projects/media/13f1d6d93532bfb23a03a9a4fec5f41b.png View File

Before After
Width: 1200  |  Height: 650  |  Size: 196 KiB

BIN
entries/projects/media/ad84021445feb7021f2320f6be599ef5.png View File

Before After
Width: 1024  |  Height: 557  |  Size: 133 KiB

BIN
entries/projects/media/d3f05acc1973ea938920407511c28bff.png View File

Before After
Width: 697  |  Height: 598  |  Size: 343 KiB

BIN
entries/projects/media/fc0a0ddf2a914b171bb3a5013e9e7b6c.png View File

Before After
Width: 1024  |  Height: 595  |  Size: 26 KiB

+ 3
- 0
entries/projects/musical-floppy-drives.md View File

@ -0,0 +1,3 @@
![video](<https://youtu.be/b65Av0gy_m8>)
A more detailed description of how I made this will be coming soon.

+ 15
- 0
entries/projects/timelapse-programming-pong.md View File

@ -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)

+ 20
- 0
entries/projects/timelapse-programming-zombie-game.md View File

@ -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/)

Loading…
Cancel
Save