generated from Skynet/deploy_user
Compare commits
48 commits
presentati
...
main
Author | SHA1 | Date | |
---|---|---|---|
|
9d8f6813bf | ||
|
a33a0eae47 | ||
|
f962eb6c24 | ||
|
6340a931e2 | ||
|
1ef8ff74a4 | ||
|
856d2e322e | ||
|
6e30e6c153 | ||
|
93c44a79d9 | ||
|
b2398bf4af | ||
|
0fb6f72dfe | ||
|
0afae6f7a3 | ||
|
4324d5109b | ||
|
d8175d2374 | ||
|
e5489795ed | ||
|
810dccbf5d | ||
|
5f4a1c7a16 | ||
|
ab6bf1871d | ||
|
eb4812b331 | ||
|
9f6354d42c | ||
|
ba7db7fb1d | ||
|
a03644c1fa | ||
|
e07fa3b39c | ||
|
77f020b9aa | ||
|
92386c1bb3 | ||
|
70d9480191 | ||
|
cfc0be7e09 | ||
|
2caa1fcf99 | ||
|
b7cf24e53b | ||
|
321fdc14ef | ||
|
4053799aca | ||
|
dcff561133 | ||
|
ebba9fa259 | ||
|
5f663f269b | ||
|
14a03166ff | ||
|
eb4da54f7f | ||
41d69a56b3 | |||
|
e010bd03dc | ||
|
5ab1925772 | ||
|
7c33bd7328 | ||
|
c14b22c6fb | ||
|
a5fb45b4ff | ||
|
99e1b00a8e | ||
|
2f08c7cf97 | ||
|
01c11420df | ||
|
49c79ac87d | ||
|
133c775699 | ||
|
5446353755 | ||
eee2190b24 |
35 changed files with 3342 additions and 18 deletions
|
@ -8,21 +8,20 @@ on:
|
||||||
# - src/**/*
|
# - src/**/*
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
build:
|
deploy:
|
||||||
runs-on: docker
|
runs-on: docker
|
||||||
steps:
|
steps:
|
||||||
# get the repo first
|
|
||||||
- uses: https://code.forgejo.org/actions/checkout@v4
|
- uses: https://code.forgejo.org/actions/checkout@v4
|
||||||
# Make sure all files are pulled down
|
|
||||||
- uses: https://forgejo.skynet.ie/Skynet/actions/get_lfs@v6
|
- uses: https://forgejo.skynet.ie/Skynet/actions/get_lfs@v6
|
||||||
with:
|
with:
|
||||||
repository: ${{ gitea.repository }}
|
repository: ${{ gitea.repository }}
|
||||||
ref_name: ${{ gitea.ref_name }}
|
ref_name: ${{ gitea.ref_name }}
|
||||||
# temp one just to get it "built"
|
- uses: https://forgejo.skynet.ie/eoghanconlon73/actions/docker_nix@eoghan_test-final6
|
||||||
|
- run: nix build
|
||||||
|
- run: mkdir temp
|
||||||
|
- run: cp -rL result/* ./temp
|
||||||
- uses: https://forgejo.skynet.ie/Skynet/actions/deploy_user@v6
|
- uses: https://forgejo.skynet.ie/Skynet/actions/deploy_user@v6
|
||||||
with:
|
with:
|
||||||
ssh_key: ${{ secrets.SSH_KEY }}
|
ssh_key: ${{ secrets.SSH_KEY }}
|
||||||
username: ${{ env.GITHUB_REPOSITORY_OWNER }}
|
username: ${{ env.GITHUB_REPOSITORY_OWNER }}
|
||||||
folder: "src"
|
folder: "temp"
|
||||||
# uncomment below if you want to deploy to a subfolder
|
|
||||||
#destination: "subfolder"
|
|
23
.md.toml
Normal file
23
.md.toml
Normal file
|
@ -0,0 +1,23 @@
|
||||||
|
indentation = 2
|
||||||
|
src = "./src"
|
||||||
|
dest = "./build"
|
||||||
|
|
||||||
|
html_void = []
|
||||||
|
|
||||||
|
[template]
|
||||||
|
enable = true
|
||||||
|
order = [
|
||||||
|
{ type = "Powerpoint", path = "./src/templates/powerpoint.html" },
|
||||||
|
{ type = "Adjacent" },
|
||||||
|
{ type = "AdjacentFolder" },
|
||||||
|
#{ type = "RootFolder", path = "./src/templates/folder.html" },
|
||||||
|
# path to the templates' folder,
|
||||||
|
#{ type = "Root", path = "./src/templates" },
|
||||||
|
{ type = "General", path = "./src/templates/template.html" },
|
||||||
|
{ type = "Default" },
|
||||||
|
]
|
||||||
|
|
||||||
|
|
||||||
|
[indexing]
|
||||||
|
roots = []
|
||||||
|
render_drafts = false
|
159
flake.lock
Normal file
159
flake.lock
Normal file
|
@ -0,0 +1,159 @@
|
||||||
|
{
|
||||||
|
"nodes": {
|
||||||
|
"bfom": {
|
||||||
|
"inputs": {
|
||||||
|
"naersk": "naersk",
|
||||||
|
"nixpkgs": "nixpkgs_2",
|
||||||
|
"utils": "utils"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1723500950,
|
||||||
|
"narHash": "sha256-t1eApFGI+JzLIW2YToLlDV20n+Nevk1q4fZBYU1m93I=",
|
||||||
|
"owner": "silver_rust",
|
||||||
|
"repo": "bfom",
|
||||||
|
"rev": "7f339f28442758ecc3f1697e3f70d441973664b9",
|
||||||
|
"type": "gitlab"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "silver_rust",
|
||||||
|
"repo": "bfom",
|
||||||
|
"type": "gitlab"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"naersk": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": "nixpkgs"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1713520724,
|
||||||
|
"narHash": "sha256-CO8MmVDmqZX2FovL75pu5BvwhW+Vugc7Q6ze7Hj8heI=",
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "naersk",
|
||||||
|
"rev": "c5037590290c6c7dae2e42e7da1e247e54ed2d49",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "naersk",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixpkgs": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1714091391,
|
||||||
|
"narHash": "sha256-68n3GBvlm1MIeJXadPzQ3v8Y9sIW3zmv8gI5w5sliC8=",
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "4c86138ce486d601d956a165e2f7a0fc029a03c1",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"id": "nixpkgs",
|
||||||
|
"type": "indirect"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixpkgs_2": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1714091391,
|
||||||
|
"narHash": "sha256-68n3GBvlm1MIeJXadPzQ3v8Y9sIW3zmv8gI5w5sliC8=",
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "4c86138ce486d601d956a165e2f7a0fc029a03c1",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"id": "nixpkgs",
|
||||||
|
"type": "indirect"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixpkgs_3": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1727173215,
|
||||||
|
"narHash": "sha256-OtMlWYCqBDbnEsByoows785Gem9CSMiXYEBiKKtStk4=",
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "965289e5e07243f1cde3212d8bcaf726d36c5c46",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"id": "nixpkgs",
|
||||||
|
"type": "indirect"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"root": {
|
||||||
|
"inputs": {
|
||||||
|
"bfom": "bfom",
|
||||||
|
"nixpkgs": "nixpkgs_3",
|
||||||
|
"utils": "utils_2"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"systems": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1681028828,
|
||||||
|
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default",
|
||||||
|
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"systems_2": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1681028828,
|
||||||
|
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default",
|
||||||
|
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"utils": {
|
||||||
|
"inputs": {
|
||||||
|
"systems": "systems"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1710146030,
|
||||||
|
"narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=",
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "flake-utils",
|
||||||
|
"rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "flake-utils",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"utils_2": {
|
||||||
|
"inputs": {
|
||||||
|
"systems": "systems_2"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1726560853,
|
||||||
|
"narHash": "sha256-X6rJYSESBVr3hBoH0WbKE5KvhPU5bloyZ2L4K60/fPQ=",
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "flake-utils",
|
||||||
|
"rev": "c1dfcf08411b08f6b8615f7d8971a2bfa81d5e8a",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "flake-utils",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"root": "root",
|
||||||
|
"version": 7
|
||||||
|
}
|
21
flake.nix
Normal file
21
flake.nix
Normal file
|
@ -0,0 +1,21 @@
|
||||||
|
# Adapted for my use case from the flake.nix contained in https://gitlab.com/brendan.ie/v1
|
||||||
|
{
|
||||||
|
description = "My Personal site";
|
||||||
|
|
||||||
|
inputs = {
|
||||||
|
utils.url = "github:numtide/flake-utils";
|
||||||
|
bfom.url = "gitlab:silver_rust/bfom";
|
||||||
|
};
|
||||||
|
|
||||||
|
outputs = { self, nixpkgs, utils, bfom }: utils.lib.eachDefaultSystem (system:
|
||||||
|
let
|
||||||
|
pkgs = nixpkgs.legacyPackages."${system}";
|
||||||
|
in rec {
|
||||||
|
defaultPackage = pkgs.stdenv.mkDerivation {
|
||||||
|
name = "eoghanconlon.ie";
|
||||||
|
src = self;
|
||||||
|
buildPhase = "${bfom.defaultPackage."${system}"}/bin/cargo-bfom";
|
||||||
|
installPhase = "mkdir -p $out; cp -R build/* $out";
|
||||||
|
};
|
||||||
|
});
|
||||||
|
}
|
30
src/CS4043project.html
Normal file
30
src/CS4043project.html
Normal file
|
@ -0,0 +1,30 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en">
|
||||||
|
<head>
|
||||||
|
<link rel="stylesheet" href="Test.css">
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<title>CS4043 project</title>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<h1>CS4043 Project</h1>
|
||||||
|
<p><a href="./index.html">Return to Home Page</a></p>
|
||||||
|
<p>I had minimal involvement in the actual programming of this project, but I understand the bones of the code and would be able to explain it should that be required.</p>
|
||||||
|
<p><a href="https://college_ec.gitlab.io/sem2/cs4043-project-group/prototype-brendan-godot-02/">CURRENTLY BROKEN</a></p>
|
||||||
|
<p><a href="https://gitlab.com/college_EC/completed_projects/prototype-brendan-godot-02">Repository</a></p>
|
||||||
|
<footer>
|
||||||
|
<p>
|
||||||
|
2022-<span id="year">2022</span> | Eoghan Conlon | Email:
|
||||||
|
<a href = "mailto:hello@eoghanconlon.ie">hello@eoghanconlon.ie
|
||||||
|
</a>
|
||||||
|
| Discord: eoghanconlon74#1132 | Gitlab:
|
||||||
|
<a href = "https://gitlab.com/eoghanconlon73">
|
||||||
|
@eoghanconlon73
|
||||||
|
</a>
|
||||||
|
</p>
|
||||||
|
</footer>
|
||||||
|
<script>
|
||||||
|
/* I am a lazy fucker */
|
||||||
|
document.getElementById('year').textContent = new Date().getFullYear().toString()
|
||||||
|
</script>
|
||||||
|
</body>
|
||||||
|
</html>
|
56
src/Test.css
Normal file
56
src/Test.css
Normal file
|
@ -0,0 +1,56 @@
|
||||||
|
/*There is nothing more permanent then a temporary solution*/
|
||||||
|
body{
|
||||||
|
background-color: slategrey;
|
||||||
|
}
|
||||||
|
h1{
|
||||||
|
color: azure;
|
||||||
|
text-align: center;
|
||||||
|
font-family: Arial, serif;
|
||||||
|
font-size: 30px;
|
||||||
|
}
|
||||||
|
h2{
|
||||||
|
color: azure;
|
||||||
|
text-align: center;
|
||||||
|
font-family: Arial, serif;
|
||||||
|
font-size: 25px;
|
||||||
|
}
|
||||||
|
h3{
|
||||||
|
color: azure;
|
||||||
|
text-align: center;
|
||||||
|
font-family: Arial, serif;
|
||||||
|
font-size: 20px;
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
h4{
|
||||||
|
color: azure;
|
||||||
|
text-align: center;
|
||||||
|
font-family: Arial, serif;
|
||||||
|
font-size: 20px;
|
||||||
|
font-weight: bolder;
|
||||||
|
}
|
||||||
|
p{
|
||||||
|
font-family: Arial, serif;
|
||||||
|
font-size: 20px;
|
||||||
|
color: white;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
table{
|
||||||
|
color: aliceblue;
|
||||||
|
font-family: Arial, serif;
|
||||||
|
font-size: 15px;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
th{
|
||||||
|
font-size: 20px;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
footer p{
|
||||||
|
font-size: 10px;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
.wrapper{
|
||||||
|
height: auto;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
}
|
70
src/blog/Blogs.css
Normal file
70
src/blog/Blogs.css
Normal file
|
@ -0,0 +1,70 @@
|
||||||
|
body{
|
||||||
|
background-color: slategrey;
|
||||||
|
}
|
||||||
|
h1{
|
||||||
|
color: azure;
|
||||||
|
text-align: center;
|
||||||
|
font-family: Arial, serif;
|
||||||
|
font-size: 30px;
|
||||||
|
}
|
||||||
|
h2{
|
||||||
|
color: azure;
|
||||||
|
text-align: center;
|
||||||
|
font-family: Arial, serif;
|
||||||
|
font-size: 25px;
|
||||||
|
}
|
||||||
|
h3{
|
||||||
|
color: azure;
|
||||||
|
text-align: center;
|
||||||
|
font-family: Arial, serif;
|
||||||
|
font-size: 20px;
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
h4{
|
||||||
|
color: azure;
|
||||||
|
text-align: center;
|
||||||
|
font-family: Arial, serif;
|
||||||
|
font-size: 20px;
|
||||||
|
font-weight: bold;
|
||||||
|
font-style: italic;
|
||||||
|
}
|
||||||
|
p, ul{
|
||||||
|
font-family: Arial, serif;
|
||||||
|
font-size: 20px;
|
||||||
|
color: white;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
table{
|
||||||
|
color: aliceblue;
|
||||||
|
font-family: Arial, serif;
|
||||||
|
font-size: 15px;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
th{
|
||||||
|
font-size: 20px;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
footer p{
|
||||||
|
font-size: 10px;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
.wrapper{
|
||||||
|
height: auto;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
}
|
||||||
|
code{
|
||||||
|
color: azure;
|
||||||
|
}
|
||||||
|
td, th{
|
||||||
|
border: 1px solid azure;
|
||||||
|
}
|
||||||
|
table{
|
||||||
|
border-spacing: 0;
|
||||||
|
}
|
||||||
|
.table{
|
||||||
|
margin-left: auto;
|
||||||
|
margin-right: auto;
|
||||||
|
width: 8em;
|
||||||
|
}
|
56
src/blog/Test.css
Normal file
56
src/blog/Test.css
Normal file
|
@ -0,0 +1,56 @@
|
||||||
|
/*There is nothing more permanent then a temporary solution*/
|
||||||
|
body{
|
||||||
|
background-color: slategrey;
|
||||||
|
}
|
||||||
|
h1{
|
||||||
|
color: azure;
|
||||||
|
text-align: center;
|
||||||
|
font-family: Arial, serif;
|
||||||
|
font-size: 30px;
|
||||||
|
}
|
||||||
|
h2{
|
||||||
|
color: azure;
|
||||||
|
text-align: center;
|
||||||
|
font-family: Arial, serif;
|
||||||
|
font-size: 25px;
|
||||||
|
}
|
||||||
|
h3{
|
||||||
|
color: azure;
|
||||||
|
text-align: center;
|
||||||
|
font-family: Arial, serif;
|
||||||
|
font-size: 20px;
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
h4{
|
||||||
|
color: azure;
|
||||||
|
text-align: center;
|
||||||
|
font-family: Arial, serif;
|
||||||
|
font-size: 20px;
|
||||||
|
font-weight: bolder;
|
||||||
|
}
|
||||||
|
p{
|
||||||
|
font-family: Arial, serif;
|
||||||
|
font-size: 20px;
|
||||||
|
color: white;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
table{
|
||||||
|
color: aliceblue;
|
||||||
|
font-family: Arial, serif;
|
||||||
|
font-size: 15px;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
th{
|
||||||
|
font-size: 20px;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
footer p{
|
||||||
|
font-size: 10px;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
.wrapper{
|
||||||
|
height: auto;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
}
|
71
src/blog/educational/CE4703/bubblesort.html
Normal file
71
src/blog/educational/CE4703/bubblesort.html
Normal file
|
@ -0,0 +1,71 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en-ie">
|
||||||
|
<head>
|
||||||
|
<title>CE4703 2019 exam paper Q4</title>
|
||||||
|
<link rel="stylesheet" href="../../Blogs.css" />
|
||||||
|
<meta charset="UTF-8" />
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<h1 id="q4-bubblesort">2019 Q4 (Bubblesort)</h1>
|
||||||
|
<p>As before these may not get 100% due to them being answers that I would give in the exam should it come up.</p>
|
||||||
|
<h2 id="a-explain-in-plain-english-the-bubblesort-algorithm">a) Explain in plain English the Bubblesort algorithm</h2>
|
||||||
|
<p>In Bubblesort you select two elements that are beside eachother and compare them, if the one that is further to the right
|
||||||
|
is smaller than the one further to the left, we swap them round and then repeat till you reach the end of the list. You
|
||||||
|
then repeat until you are able to move through the list without swapping any numbers around.</p>
|
||||||
|
<h2 id="b-provide-a-pseudo-code-representation-of-the-bubblesort-algorithm">b) Provide a pseudo-code representation of the Bubblesort algorithm</h2>
|
||||||
|
<p>As before this is closer to C then english but that is the way that I work through things for the most part.</p>
|
||||||
|
<pre><code>bubbleSort(int set[], int size){
|
||||||
|
int temp;
|
||||||
|
int check = 1;
|
||||||
|
while(check){
|
||||||
|
check = 0;
|
||||||
|
for(int i = 0, j = 1; j < size; i++, j++){
|
||||||
|
if(set[i] > set[j]){
|
||||||
|
check = 1;
|
||||||
|
temp = set[i];
|
||||||
|
set[i] = set[j];
|
||||||
|
set[j] = temp;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</code></pre>
|
||||||
|
<h2 id="c-provide-an-implementation-of-your-bubblesort-algorithm-in-the-c-programming-language">c) Provide an implementation of your Bubblesort algorithm in the C programming language</h2>
|
||||||
|
<pre><code class="language-C">void bubblesort(int set[], int size){
|
||||||
|
int temp;
|
||||||
|
int check = 1;
|
||||||
|
while(check){
|
||||||
|
check = 0;
|
||||||
|
for(int i = 0, j = 1; j < size; i++, j++){
|
||||||
|
if(set[i] > set[j]){
|
||||||
|
check = 1;
|
||||||
|
temp = set[i];
|
||||||
|
set[i] = set[j];
|
||||||
|
set[j] = temp;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</code></pre>
|
||||||
|
<h2 id="d-compare-the-efficiency-of-bubblesort-and-merge-sort-for-a-random-array-a-sorted-array-with-a-single-appended-element">d) Compare the efficiency of Bubblesort and merge sort for a random array & a sorted array with a single appended element</h2>
|
||||||
|
<p>Bubblesort, in the best case scenario where you only have to wap one or two numbers it can be more efficient but it can be
|
||||||
|
the least efficient if you need to move an awful lot of numbers. To bring this back to the question, Bubblesort can be more
|
||||||
|
efficient with the sorted array with one appended element in a best case scenario but otherwise Mergesort is more efficient.</p>
|
||||||
|
<footer>
|
||||||
|
<p>
|
||||||
|
2022-<span id="year">2022</span> | Eoghan Conlon | Email:
|
||||||
|
<a href = "mailto:hello@eoghanconlon.ie">hello@eoghanconlon.ie
|
||||||
|
</a>
|
||||||
|
| Discord: eoghanconlon74#1132 | Gitlab:
|
||||||
|
<a href = "https://gitlab.com/eoghanconlon73">
|
||||||
|
@eoghanconlon73
|
||||||
|
</a>
|
||||||
|
</p>
|
||||||
|
</footer>
|
||||||
|
<script>
|
||||||
|
/* I am a lazy fucker */
|
||||||
|
document.getElementById('year').textContent = new Date().getFullYear().toString()
|
||||||
|
</script>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
|
|
335
src/blog/educational/CE4703/selection_sort.html
Normal file
335
src/blog/educational/CE4703/selection_sort.html
Normal file
|
@ -0,0 +1,335 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en-ie">
|
||||||
|
<head>
|
||||||
|
<title>CE4703 2021 exam paper Q4</title>
|
||||||
|
<link rel="stylesheet" href="../../Blogs.css" />
|
||||||
|
<meta charset="UTF-8" />
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<h1 id="q4-algorithm">2021 Q4 Algorithm</h1>
|
||||||
|
<p>Of course these answers may not get 5/5 as this is from my memory of selection sort from one of last year's Java modules.</p>
|
||||||
|
<h2 id="a-explain-in-plain-english-the-selection-sort-algorithm">a) explain in plain English the Selection sort algorithm</h2>
|
||||||
|
<p>The selection sort algorithm is an algorithm that takes the middle of a <strong>PRESORTED</strong> set/array to try and see where a number
|
||||||
|
should go, or the location of the number if the number is already in the set/array.</p>
|
||||||
|
<h2 id="b-provide-a-pseudo-code-representation-of-your-selection-sort-algorithm">b) Provide a pseudo-code representation of your Selection sort algorithm.</h2>
|
||||||
|
<p>My pseudo-code tends ro be closer to C or java code at times, I find it easier to implement it in code that way personally.</p>
|
||||||
|
<h3 id="rough-work">rough work</h3>
|
||||||
|
<ul>
|
||||||
|
<li>number = 3</li>
|
||||||
|
<li>set:</li>
|
||||||
|
</ul>
|
||||||
|
<div class="table">
|
||||||
|
<table>
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th>0</th>
|
||||||
|
<th>1</th>
|
||||||
|
<th>2</th>
|
||||||
|
<th>3</th>
|
||||||
|
<th>4</th>
|
||||||
|
<th>5</th>
|
||||||
|
<th>6</th>
|
||||||
|
<th>7</th>
|
||||||
|
<th>8</th>
|
||||||
|
<th>9</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<tr>
|
||||||
|
<td>2</td>
|
||||||
|
<td>4</td>
|
||||||
|
<td>5</td>
|
||||||
|
<td>7</td>
|
||||||
|
<td>8</td>
|
||||||
|
<td>11</td>
|
||||||
|
<td>13</td>
|
||||||
|
<td>15</td>
|
||||||
|
<td>21</td>
|
||||||
|
<td>30</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
<ul>
|
||||||
|
<li>size = 10</li>
|
||||||
|
</ul>
|
||||||
|
<h4 id="pre-loop">pre-loop:</h4>
|
||||||
|
<ul>
|
||||||
|
<li>k = 9</li>
|
||||||
|
<li>k = 4</li>
|
||||||
|
</ul>
|
||||||
|
<h4 id="loop1-through-1">Loop1 through 1:</h4>
|
||||||
|
<ul>
|
||||||
|
<li>i = 4</li>
|
||||||
|
<li>if(3 == 8) //false</li>
|
||||||
|
<li>else if (3 > 8) //false</li>
|
||||||
|
<li>else
|
||||||
|
<ul>
|
||||||
|
<li>k = 2</li>
|
||||||
|
<li>greater = 0
|
||||||
|
Set left to check:</li>
|
||||||
|
</ul>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
<div class="table">
|
||||||
|
<table>
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th>0</th>
|
||||||
|
<th>1</th>
|
||||||
|
<th>2</th>
|
||||||
|
<th>3</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<tr>
|
||||||
|
<td>2</td>
|
||||||
|
<td>4</td>
|
||||||
|
<td>5</td>
|
||||||
|
<td>7</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
<h4 id="loop1-through-2">Loop1 through 2:</h4>
|
||||||
|
<ul>
|
||||||
|
<li>i = 2</li>
|
||||||
|
<li>if(3 == 5) //false</li>
|
||||||
|
<li>if(3 > 5) //false</li>
|
||||||
|
<li>else
|
||||||
|
<ul>
|
||||||
|
<li>k = 1</li>
|
||||||
|
<li>greater = 0
|
||||||
|
Set left to check</li>
|
||||||
|
</ul>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
<div class="table">
|
||||||
|
<table>
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th>0</th>
|
||||||
|
<th>1</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<tr>
|
||||||
|
<td>2</td>
|
||||||
|
<td>4</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
<h4 id="loop1-through-3">Loop1 through 3:</h4>
|
||||||
|
<ul>
|
||||||
|
<li>i = 1;</li>
|
||||||
|
<li>if(3 == 4) //false</li>
|
||||||
|
<li>if(3 > 4) //false</li>
|
||||||
|
<li>else</li>
|
||||||
|
<li>k = 0</li>
|
||||||
|
<li>greater = 0</li>
|
||||||
|
</ul>
|
||||||
|
<h4 id="post-loop">Post-Loop</h4>
|
||||||
|
<ul>
|
||||||
|
<li>if(0) //false</li>
|
||||||
|
<li>if(rValue->return_code != number_already_in_set) //true</li>
|
||||||
|
</ul>
|
||||||
|
<h4 id="pre-loop2">Pre-Loop2</h4>
|
||||||
|
<ul>
|
||||||
|
<li>b = 0</li>
|
||||||
|
</ul>
|
||||||
|
<h4 id="loop2-through-1">Loop2 through 1</h4>
|
||||||
|
<ul>
|
||||||
|
<li>a = 0</li>
|
||||||
|
<li>if(0 == 1) //False</li>
|
||||||
|
<li>else
|
||||||
|
<ul>
|
||||||
|
<li>new_set[0] = 2</li>
|
||||||
|
<li>b = 0 + 1</li>
|
||||||
|
</ul>
|
||||||
|
</li>
|
||||||
|
<li>a = 0 + 1</li>
|
||||||
|
</ul>
|
||||||
|
<h3 id="loop2-through-2">Loop2 through 2</h3>
|
||||||
|
<ul>
|
||||||
|
<li>if(1 == 1) //true
|
||||||
|
<ul>
|
||||||
|
<li>new_set[1] = 3</li>
|
||||||
|
</ul>
|
||||||
|
</li>
|
||||||
|
<li>a = 1 + 1</li>
|
||||||
|
</ul>
|
||||||
|
<h3 id="loop2-through-to-end">Loop2 through to end</h3>
|
||||||
|
<p>Each of the elements are added in until rValue->newset looks like this:</p>
|
||||||
|
<div class="table">
|
||||||
|
<table>
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th>0</th>
|
||||||
|
<th>1</th>
|
||||||
|
<th>2</th>
|
||||||
|
<th>3</th>
|
||||||
|
<th>4</th>
|
||||||
|
<th>5</th>
|
||||||
|
<th>6</th>
|
||||||
|
<th>7</th>
|
||||||
|
<th>8</th>
|
||||||
|
<th>9</th>
|
||||||
|
<th>10</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<tr>
|
||||||
|
<td>2</td>
|
||||||
|
<td>3</td>
|
||||||
|
<td>4</td>
|
||||||
|
<td>5</td>
|
||||||
|
<td>7</td>
|
||||||
|
<td>8</td>
|
||||||
|
<td>11</td>
|
||||||
|
<td>13</td>
|
||||||
|
<td>15</td>
|
||||||
|
<td>21</td>
|
||||||
|
<td>30</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
<h4 id="post-loop2">Post-Loop2</h4>
|
||||||
|
<p>return rValue</p>
|
||||||
|
<h3 id="answer">Answer</h3>
|
||||||
|
<pre><code>SelectionSort(int set[], int size, int number){
|
||||||
|
int i;
|
||||||
|
int greater;
|
||||||
|
int k;
|
||||||
|
int b;
|
||||||
|
//There would be an enum & structin my header for below, just not implemented in the pseudo-code.
|
||||||
|
rValue->return_code = added;
|
||||||
|
k = size - 1;
|
||||||
|
k /= 2;
|
||||||
|
while(i >= 0 && i < size){
|
||||||
|
i = k;
|
||||||
|
if(number == set[i]){
|
||||||
|
rValue->location = i;
|
||||||
|
rValue_code->return_code = number_already_in_set;
|
||||||
|
break;
|
||||||
|
} else if(number > set[i]){
|
||||||
|
j = size - i;
|
||||||
|
j /=2;
|
||||||
|
k = i + j;
|
||||||
|
greater = 1;
|
||||||
|
} else {
|
||||||
|
k = i / 2;
|
||||||
|
greater = 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if(greater){
|
||||||
|
i += 1;
|
||||||
|
}
|
||||||
|
if(rValue->return_code != number_already_in_set){
|
||||||
|
b = 0;
|
||||||
|
for(int a = 0; a < (size + 1); a++){
|
||||||
|
if(a == i){
|
||||||
|
rValue->new_set[a] = number;
|
||||||
|
} else {
|
||||||
|
rValue->new_set[a] = set[b];
|
||||||
|
b += 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
rValue->number_locateion = i;
|
||||||
|
return rValue;
|
||||||
|
}
|
||||||
|
</code></pre>
|
||||||
|
<h2 id="c-provide-an-implementation-of-your-selection-sort-algorithm-for-the-c-programming-language">c) Provide an implementation of your Selection Sort algorithm for the C programming Language</h2>
|
||||||
|
<pre><code class="language-C">typedef enum{
|
||||||
|
number_added,
|
||||||
|
number_already_in_set
|
||||||
|
}selectSortRCodes;
|
||||||
|
|
||||||
|
typedef struct{
|
||||||
|
selectSortRCodes return_code;
|
||||||
|
int location;
|
||||||
|
int newSet[10000]; //10000 was chosen arbitrarily to allow a large set of numbers be used, may be changed later
|
||||||
|
}selectSortRValue;
|
||||||
|
|
||||||
|
selectSortRValue *selectSort(int set[], int size, int number){
|
||||||
|
selectSortRValue *rValue = malloc(sizeof(selectSortRValue));
|
||||||
|
if(rValue != NULL){
|
||||||
|
int i = 0;
|
||||||
|
int b;
|
||||||
|
int j;
|
||||||
|
int greater;
|
||||||
|
int k = size - 1;
|
||||||
|
k /= 2;
|
||||||
|
while(i >= 0 && i < size && k > 0){
|
||||||
|
i = k;
|
||||||
|
if(number == set[i]){
|
||||||
|
rValue->return_code = number_already_in_set;
|
||||||
|
break;
|
||||||
|
} else if(number > set[i]){
|
||||||
|
j = size - i;
|
||||||
|
j /= 2;
|
||||||
|
k = i + j;
|
||||||
|
greater = 1;
|
||||||
|
} else {
|
||||||
|
k = i / 2;
|
||||||
|
greater = 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if(greater){
|
||||||
|
i += 1;
|
||||||
|
}
|
||||||
|
if(rValue->return_code != number_already_in_set){
|
||||||
|
b = 0;
|
||||||
|
for(int a = 0; a < (size + 1); a++){
|
||||||
|
if(a == i){
|
||||||
|
rValue->newSet[a] = number;
|
||||||
|
} else {
|
||||||
|
rValue->newSet[a] = set[b];
|
||||||
|
b += 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
rValue->location = i;
|
||||||
|
}
|
||||||
|
return rValue;
|
||||||
|
}
|
||||||
|
</code></pre>
|
||||||
|
<h2 id="d-compare-the-effeciency-of-selection-sort-and-mergesort-for-1.a-random-array-2.a-pre-sorted-array-with-single-element-out-of-order">d) Compare the effeciency of Selection sort and Mergesort for: 1. A random Array 2. A pre-sorted array with single element out of order</h2>
|
||||||
|
<p>Selection sort does not work at all with a random array as it is relying on the fact that all numbers in indexes less than
|
||||||
|
the midpoint of the set/array are less than the number at the midpoint and that all numbers to the right of the midpoint
|
||||||
|
of the array are greater than the number at the index of the midpoint. Therefore, Mergesort is more efficient for random arrays.
|
||||||
|
But for arrays with only one number out of place Selection sort is more efficient as once we know where the item is we can
|
||||||
|
gauge where it should be based on the midpoints of each selection (bigger or smaller).
|
||||||
|
Worst case Big O notation for each:</p>
|
||||||
|
<div class="table">
|
||||||
|
<table>
|
||||||
|
<tr>
|
||||||
|
<th>Selection Sort</th>
|
||||||
|
<th>Mergesort</th>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>n^2</td>
|
||||||
|
<td>n * log(n)</td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
<p>Based on the above figures, Mergesort is better though in practice Selection sort will be better for sizes of N less than 100.</p>
|
||||||
|
<footer>
|
||||||
|
<p>
|
||||||
|
2022-<span id="year">2022</span> | Eoghan Conlon | Email:
|
||||||
|
<a href = "mailto:hello@eoghanconlon.ie">hello@eoghanconlon.ie
|
||||||
|
</a>
|
||||||
|
| Discord: eoghanconlon74#1132 | Gitlab:
|
||||||
|
<a href = "https://gitlab.com/eoghanconlon73">
|
||||||
|
@eoghanconlon73
|
||||||
|
</a>
|
||||||
|
</p>
|
||||||
|
</footer>
|
||||||
|
<script>
|
||||||
|
/* I am a lazy fucker */
|
||||||
|
document.getElementById('year').textContent = new Date().getFullYear().toString()
|
||||||
|
</script>
|
||||||
|
</body>
|
||||||
|
</html>
|
372
src/blog/educational/CS4023/Wk12.html
Normal file
372
src/blog/educational/CS4023/Wk12.html
Normal file
|
@ -0,0 +1,372 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en-ie">
|
||||||
|
<head>
|
||||||
|
<title>CS4023 Wk12</title>
|
||||||
|
<link rel="stylesheet" href="../../Blogs.css"/>
|
||||||
|
<meta charset="UTF-8"/>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<h1 id="week-12">Week 12</h1>
|
||||||
|
<p>Just an aside before I write this week's blog, I have been keeping up with the
|
||||||
|
lectures throughout the semester, I just haven't had a chance to do any of the
|
||||||
|
blogs up till now due to the workload in my other modules.</p>
|
||||||
|
<hr>
|
||||||
|
<h2 id="lab">Lab</h2>
|
||||||
|
<p>This week's lab was a short but challenging one. There was a twist in it though
|
||||||
|
that kept me on my toes, and that was how do I pass a variable to a function
|
||||||
|
without modifying the function call, thus modifying the main function too much.
|
||||||
|
That is when the solution hit me, make it a <strong>global variable</strong>. This much against my better judgement
|
||||||
|
(and good coding
|
||||||
|
practice that has been instilled in me from CE4703), was the only way to do this. To explain why this isn't good
|
||||||
|
practice
|
||||||
|
I'll first have to explain what is a global variable.</p>
|
||||||
|
<h3 id="global-variables">Global Variables</h3>
|
||||||
|
<p>Global variables are variables that can be accessed by any function called by your program. Take these examples:</p>
|
||||||
|
<h4 id="sample-1">Sample 1</h4>
|
||||||
|
<pre><code class="language-C">#include <stdio.h>
|
||||||
|
#include <stdlib.h>
|
||||||
|
|
||||||
|
int i = 0;
|
||||||
|
|
||||||
|
int main(){
|
||||||
|
while(i < 10){
|
||||||
|
printf("i equals %i", i);
|
||||||
|
i++;
|
||||||
|
}
|
||||||
|
EXIT_SUCCESS;
|
||||||
|
}
|
||||||
|
</code></pre>
|
||||||
|
<p>Output:</p>
|
||||||
|
<table>
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th> Expected value of i </th>
|
||||||
|
<th> Output </th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<center> 0</center>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<center> i equals 0</center>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<center> 1</center>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<center> i equals 1</center>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<center> 2</center>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<center> i equals 2</center>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<center> 3</center>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<center> i equals 3</center>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<center> 4</center>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<center> i equals 4</center>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<center> 5</center>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<center> i equals 5</center>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<center> 6</center>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<center> i equals 6</center>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<center> 7</center>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<center> i equals 7</center>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<center> 8</center>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<center> i equals 8</center>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<center> 9</center>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<center> i equals 9</center>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
<h4 id="sample-2">Sample 2</h4>
|
||||||
|
<pre><code class="language-C">#include <stdio.h>
|
||||||
|
#include <stdlib.h>
|
||||||
|
|
||||||
|
int sumbyten(int j);
|
||||||
|
|
||||||
|
int i = 0;
|
||||||
|
|
||||||
|
int main(){
|
||||||
|
int sum = i;
|
||||||
|
while(i < 10){
|
||||||
|
sum = sumbyten(sum);
|
||||||
|
printf("i equals %i", i);
|
||||||
|
i++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
int sumbyten(int j){
|
||||||
|
int temp = j;
|
||||||
|
i *= 10;
|
||||||
|
printf("%i + %i = %i", i, temp, j);
|
||||||
|
j += i;
|
||||||
|
return j;
|
||||||
|
}
|
||||||
|
</code></pre>
|
||||||
|
<p>Output:</p>
|
||||||
|
<table>
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th>Expected value of i</th>
|
||||||
|
<th>Actual value of i</th>
|
||||||
|
<th>Expected Value of sum</th>
|
||||||
|
<th>Actual value of Sum</th>
|
||||||
|
<th>Expected Output</th>
|
||||||
|
<th>Actual Output</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<center> 0</center>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<center> 0</center>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<center> 0 </center>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<center> 0 </center>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<center><code>0 + 0 = 0</code> <br> <code>i equals 0</code> </center>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<center><code>0 + 0 = 0</code> <br> <code>i equals 0</code> </center>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<center> 1 </center>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<center> 1 </center>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<center> 0 </center>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<center> 0 </center>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<center><code>10 + 0 = 10</code> <br> <code>i equals 1</code> </center>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<center><code>10 + 0 = 10</code> <br> <code>i equals 1</code> </center>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<center> 2 </center>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<center> 10 </center>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<center> 10 </center>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<center> 10 </center>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<center><code>20 + 10 = 30</code> <br> <code>i equals 2</code> </center>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<center> N/A </center>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<center> 3 </center>
|
||||||
|
</td>
|
||||||
|
<td></td>
|
||||||
|
<td>
|
||||||
|
<center> 30 </center>
|
||||||
|
</td>
|
||||||
|
<td></td>
|
||||||
|
<td>
|
||||||
|
<center><code>30 + 30 = 60</code> <br> <code>i equals 3</code> </center>
|
||||||
|
</td>
|
||||||
|
<td></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<center> 4 </center>
|
||||||
|
</td>
|
||||||
|
<td></td>
|
||||||
|
<td>
|
||||||
|
<center> 60 </center>
|
||||||
|
</td>
|
||||||
|
<td></td>
|
||||||
|
<td>
|
||||||
|
<center><code>40 + 60 = 100</code> <br> <code>i equals 4</code> </center>
|
||||||
|
</td>
|
||||||
|
<td></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<center> 5 </center>
|
||||||
|
</td>
|
||||||
|
<td></td>
|
||||||
|
<td>
|
||||||
|
<center> 100 </center>
|
||||||
|
</td>
|
||||||
|
<td></td>
|
||||||
|
<td>
|
||||||
|
<center><code>50 + 100 = 150</code> <br> <code>i equals 5</code> </center>
|
||||||
|
</td>
|
||||||
|
<td></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<center> 6 </center>
|
||||||
|
</td>
|
||||||
|
<td></td>
|
||||||
|
<td>
|
||||||
|
<center> 150 </center>
|
||||||
|
</td>
|
||||||
|
<td></td>
|
||||||
|
<td>
|
||||||
|
<center><code>60 + 150 = 210</code> <br> <code>i equals 6</code> </center>
|
||||||
|
</td>
|
||||||
|
<td></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<center> 7 </center>
|
||||||
|
</td>
|
||||||
|
<td></td>
|
||||||
|
<td>
|
||||||
|
<center> 210 </center>
|
||||||
|
</td>
|
||||||
|
<td></td>
|
||||||
|
<td>
|
||||||
|
<center><code>70 + 210 = 280</code> <br> <code>i equals 7</code> </center>
|
||||||
|
</td>
|
||||||
|
<td></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<center> 8 </center>
|
||||||
|
</td>
|
||||||
|
<td></td>
|
||||||
|
<td>
|
||||||
|
<center> 280 </center>
|
||||||
|
</td>
|
||||||
|
<td></td>
|
||||||
|
<td>
|
||||||
|
<center><code>80 + 280 = 360</code> <br> <code>i equals 8</code> </center>
|
||||||
|
</td>
|
||||||
|
<td></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<center> 9 </center>
|
||||||
|
</td>
|
||||||
|
<td></td>
|
||||||
|
<td>
|
||||||
|
<center> 360 </center>
|
||||||
|
</td>
|
||||||
|
<td></td>
|
||||||
|
<td>
|
||||||
|
<center><code>90 + 360 = 450</code> <br> <code>i equals 9</code> </center>
|
||||||
|
</td>
|
||||||
|
<td></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<center> 10 </center>
|
||||||
|
</td>
|
||||||
|
<td></td>
|
||||||
|
<td>
|
||||||
|
<center> 450 </center>
|
||||||
|
</td>
|
||||||
|
<td></td>
|
||||||
|
<td>
|
||||||
|
<center> N/A </center>
|
||||||
|
</td>
|
||||||
|
<td></td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
<p>As you can see from the above examples, global variables can be dangerous as they can be changed by any function in
|
||||||
|
the
|
||||||
|
program. In the program in Sample 1, the program works as intended but as you can see, in sample 2 the loop
|
||||||
|
terminates
|
||||||
|
after going through it once because i is changed by the <code>sumbyten</code> function, dispite the fact that the
|
||||||
|
way that the program
|
||||||
|
is written which is to go through it 10 times using the numbers 0 through to 9.This is because the function alters
|
||||||
|
the
|
||||||
|
value stored in i while it is running. It is because the functions can see this value is why it seems tempting but
|
||||||
|
it's
|
||||||
|
because of this fact that it isn't such a good thing at the same time as those functions can change the value,
|
||||||
|
messing up the
|
||||||
|
expected running of the program.</p>
|
||||||
|
<footer>
|
||||||
|
<p>
|
||||||
|
2022-<span id="year">2022</span> | Eoghan Conlon | Email:
|
||||||
|
<a href="mailto:hello@eoghanconlon.ie">hello@eoghanconlon.ie
|
||||||
|
</a>
|
||||||
|
| Discord: eoghanconlon74#1132 | Gitlab:
|
||||||
|
<a href="https://gitlab.com/eoghanconlon73">
|
||||||
|
@eoghanconlon73
|
||||||
|
</a>
|
||||||
|
</p>
|
||||||
|
</footer>
|
||||||
|
<script>
|
||||||
|
/* I am a lazy fucker */
|
||||||
|
document.getElementById('year').textContent = new Date().getFullYear().toString()
|
||||||
|
</script>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
|
|
95
src/blog/educational/coop_cv.md
Normal file
95
src/blog/educational/coop_cv.md
Normal file
|
@ -0,0 +1,95 @@
|
||||||
|
<head>
|
||||||
|
<link rel="stylesheet" href="../Blogs.css">
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<title>My Co-op CV</title>
|
||||||
|
</head>
|
||||||
|
|
||||||
|
# Personal Details
|
||||||
|
|
||||||
|
| Titles | Information |
|
||||||
|
|---------------------|-------------------------------------------------------------------------------|
|
||||||
|
| Student Code | 21310262 |
|
||||||
|
| Forenames | EOGHAN MICHAEL |
|
||||||
|
| Surname | CONLON |
|
||||||
|
| Home Address | 18 RATHCARN <br /> MONEYGALL <br /> ROSCREA <br /> CO OFFALLY <br /> E53 TN25 |
|
||||||
|
| Term Address | 18 RATHCARN <br /> MONEYGALL <br /> ROSCREA <br /> CO OFFALLY <br /> E53 TN25 |
|
||||||
|
| Contact information | Email: 21310262@studentmail.ul.ie <br /> Phone: 087 4634330 |
|
||||||
|
|
||||||
|
# Current Education
|
||||||
|
|
||||||
|
| Year | Period | Module Code | Module Name | Grade |
|
||||||
|
|---------|--------|-------------|---------------------------------------------|-------|
|
||||||
|
| 2022/23 | SEM2 | ED5042 | MOBILE APP DEVELOPMENT | A1 |
|
||||||
|
| 2022/23 | SEM2 | ET4004 | TCP / IP NETWORKING | B3 |
|
||||||
|
| 2022/23 | SEM2 | ET4014 | DATA SECURITY | A2 |
|
||||||
|
| 2022/23 | SEM2 | ET4334 | INTRODUCTION TO CLOUD COMPUTING | A1 |
|
||||||
|
| 2022/23 | SEM2 | ET4345 | OPERATING SYSTEMS 2 | A2 |
|
||||||
|
| 2022/23 | SEM1 | CE4703 | COMPUTER SOFTWARE 3 | B1 |
|
||||||
|
| 2022/23 | SEM1 | CS4023 | OPERATING SYSTEMS | B2 |
|
||||||
|
| 2022/23 | SEM1 | ET4023 | INTRODUCTION TO SECURITY AND CRYPTOGRAPHY | B2 |
|
||||||
|
| 2022/23 | SEM1 | ET4132 | INTRODUCTION TO WEB AND DATABASE TECHNOLOGY | A2 |
|
||||||
|
| 2022/23 | SEM1 | ET4304 | MODERN COMMUNICATIONS: FUNDAMENTALS | B3 |
|
||||||
|
| 2022/22 | SEM2 | CS4043 | GAMES MODELLING DESIGN | B2 |
|
||||||
|
| 2022/22 | SEM2 | CS4182 | FOUNDATIONS OF COMPUTER SCIENCE 2 | A1 |
|
||||||
|
| 2022/22 | SEM2 | CS4222 | SOFTWARE DEVELOPMENT | B1 |
|
||||||
|
| 2022/22 | SEM2 | ET4162 | COMPUTER SYSTEMS ORGANISATION | A1 |
|
||||||
|
| 2022/22 | SEM2 | MA4402 | COMPUTER MATHS 2 | B1 |
|
||||||
|
| 2022/22 | SEM1 | CS4012 | REPRESENTATION AND MODELLING | B1 |
|
||||||
|
| 2022/22 | SEM1 | CS4141 | INTRODUCTION TO PROGRAMMING | A2 |
|
||||||
|
| 2022/22 | SEM1 | CS4221 | FUNDAMENTALS OF COMPUTER SCIENCE 1 | A1 |
|
||||||
|
| 2022/22 | SEM1 | ET4011 | FUNDAMENTALS OF COMPUTER ORGANISATION | A1 |
|
||||||
|
| 2022/22 | SEM1 | MS4111 | DISCRETE MATHEMATICS 1 | B3 |
|
||||||
|
|
||||||
|
# Previous Education
|
||||||
|
## Secondary school:
|
||||||
|
OUR LADYS SECONDARY SCHOOL
|
||||||
|
|
||||||
|
| Level | Subject | Grade | Result |
|
||||||
|
|--------|------------------------------------------|-------|--------|
|
||||||
|
| | D/S | | |
|
||||||
|
| | D | | |
|
||||||
|
| SLLC92 | Irish | H3 | Pass |
|
||||||
|
| SLLC92 | English | H4 | Pass |
|
||||||
|
| SLLC92 | Mathematics | H2 | Pass |
|
||||||
|
| SLLC92 | French | H4 | Pass |
|
||||||
|
| SLLC92 | Chemistry | H3 | Pass |
|
||||||
|
| SLLC92 | Music | H2 | Pass |
|
||||||
|
| SLLC92 | Graphic Communication & Technical Design | H3 | Pass |
|
||||||
|
|
||||||
|
# Previous Employment
|
||||||
|
|
||||||
|
| Organisation | From | To | Job Title |
|
||||||
|
|--------------------------------------------|----------|----------|-------------------|
|
||||||
|
| University of Limerick ICT Learning center | Sep 2022 | Dec 2022 | PSLG Group Leader |
|
||||||
|
| The Plaza Group (Spar Moneygall) | Jul 2021 | | Shop Assistant |
|
||||||
|
|
||||||
|
# Skills Profile
|
||||||
|
|
||||||
|
| Title | Content |
|
||||||
|
|---------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
||||||
|
| Key Skills Profile | Proficient Microsoft Word<br/>Proficient Microsoft Powerpoint<br/>Basic Microsoft Excel<br/>Proficient Java Programming<br/>Basic C# (Used in a project made in Godot)<br/>Proficient Git<br/>Full Driving Licence<br/>Proficient HTML<br/>B Grade Leaving Cert Honours Maths<br/>Basic SQL<br/>Proficient Android Development<br/>Proficient C Programming<br/>Car Owner<br/>Basic JavaScript |
|
||||||
|
| Teamwork | I worked as part of a team on a number of group projects throughout my first year of University, including the Games Modelling Design game that is on my Gitlab profile. The project brief was to create a simple 2D game. My role in the team was assisting with the design of the game and the required design documents required for submission. I also assisted in recording the video demo of the game. I also work as part of a team as part of my part-time job |
|
||||||
|
| Communication Skills | As part of my part-time job as a Sales Assistant I have to deal with the public as I am working behind the tills and help them find what they are looking for in the shop while out on the shop floor. As part of the group projects I have completed to date I have had to communicate with the members of my group. |
|
||||||
|
| Problem Solving & Analytics | As part of my assignments for Introduction to Programming and Software Development [Unfortunately neither are public] I had to figure out how to solve certain problems, for example, in Part 3 for the assignment, I had to figure out how to sort the words into alphabetical order. To do this I put the words into an array and went through the words putting them in alphabetical order by checking the letters of the words one at a time till they were all in alphabetical order. Through the labs for these modules I became proficient in the use of an IDE for Java Development. |
|
||||||
|
| Using Initiative | Over the course of my work in the Spar Shop in the Barack Obama Plaza I use my initiative by seeing if something needs to be done, for example, the coffee dock needs to be cleaned or the counters at the till need to be wiped down and I do it. |
|
||||||
|
| Projects/Portfolio/Volunteering | GitLab profile: https://gitlab.com/users/eoghanconlon73 Beginning in March 2023 I began volunteering with the Coder Dojo in Nenagh. It ran monthly between March and June and I helped with the younger age group with Game Development using Scratch. I am currently the Health & Safety, Equipment and Training Officer for the UL Computer Society. |
|
||||||
|
| Additional Information | In 2019 I completed the Scout Chief Scout Award, in the process completeing my Bronze Gaisce. While completeinmg this I volunteered with the cub section of the scout group I was a member of at the time, for the exercise element I took up cycling for the 13 weeks and for the personal skill part I learnt how to play the guitar, which I did for 26 weeks. In 2020 I completed the Silver Gaisce, in the process of this for the personal skill I continued to learn how to play the guitar, for the physical recreation I continued with the cycling and for communittee involvment, I volunteered with the HomeWork Clubn in my Secondary School. In 2021 I was awarded the Br Edmund Rice Award in my Secondary School. This award is awarded to any student that shows exemplary communittee spirit throughout 6th year. |
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<footer>
|
||||||
|
<p>
|
||||||
|
2022-<span id="year">2022</span> | Eoghan Conlon | Email:
|
||||||
|
<a href="mailto:hello@eoghanconlon.ie">hello@eoghanconlon.ie
|
||||||
|
</a>
|
||||||
|
| Discord: eoghanconlon74#1132 | Gitlab:
|
||||||
|
<a href="https://gitlab.com/eoghanconlon73">
|
||||||
|
@eoghanconlon73
|
||||||
|
</a>
|
||||||
|
</p>
|
||||||
|
</footer>
|
||||||
|
<script>
|
||||||
|
/* I am a lazy fucker */
|
||||||
|
document.getElementById('year').textContent = new Date().getFullYear().toString()
|
||||||
|
</script>
|
50
src/blog/educational/index.html
Normal file
50
src/blog/educational/index.html
Normal file
|
@ -0,0 +1,50 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en">
|
||||||
|
<head>
|
||||||
|
<link rel="stylesheet" href="../Blogs.css">
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<title>Educational Blogs</title>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<h1>Eoghan Conlon's Blog</h1>
|
||||||
|
<p>
|
||||||
|
<a href="../index.html">Blogs home page</a>
|
||||||
|
Educational
|
||||||
|
</p>
|
||||||
|
<h2>Overview</h2>
|
||||||
|
<p>
|
||||||
|
I have this here so that other people can find their way to combined resources for modules that I am doing as part
|
||||||
|
of
|
||||||
|
my studies of LM083. I wasn't sure where else I was going to put these and here looks as good a place as any
|
||||||
|
particularly
|
||||||
|
since I haven't made use of this at all.
|
||||||
|
</p>
|
||||||
|
<h2>Semester 3</h2>
|
||||||
|
<h3>CS4023</h3>
|
||||||
|
<ul>
|
||||||
|
<li><a href="./CS4023/Wk12.html">Week 12 blog post</a></li>
|
||||||
|
</ul>
|
||||||
|
<h3>CE4703</h3>
|
||||||
|
<ul>
|
||||||
|
<li><a href="./CE4703/selection_sort.html">Selection sort question from 2021 autumn exam</a></li>
|
||||||
|
<li><a href="./CE4703/bubblesort.html">Bubblesort question from 2019 autumn exam</a></li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
|
||||||
|
<footer>
|
||||||
|
<p>
|
||||||
|
2022-<span id="year">2022</span> | Eoghan Conlon | Email:
|
||||||
|
<a href="mailto:hello@eoghanconlon.ie">hello@eoghanconlon.ie
|
||||||
|
</a>
|
||||||
|
| Discord: eoghanconlon74#1132 | Gitlab:
|
||||||
|
<a href="https://gitlab.com/eoghanconlon73">
|
||||||
|
@eoghanconlon73
|
||||||
|
</a>
|
||||||
|
</p>
|
||||||
|
</footer>
|
||||||
|
<script>
|
||||||
|
/* I am a lazy fucker */
|
||||||
|
document.getElementById('year').textContent = new Date().getFullYear().toString()
|
||||||
|
</script>
|
||||||
|
</body>
|
||||||
|
</html>
|
27
src/blog/index.html
Normal file
27
src/blog/index.html
Normal file
|
@ -0,0 +1,27 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en-IE">
|
||||||
|
<head>
|
||||||
|
<link rel="stylesheet" href="./Blogs.css">
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<title>Blogs Home</title>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<h1>Eoghan Conlon's Blog</h1>
|
||||||
|
<p>
|
||||||
|
<a href="../index.html">Home</a>
|
||||||
|
Blogs
|
||||||
|
</p>
|
||||||
|
<p><a href="./educational/index.html">Educational blogs</a></p>
|
||||||
|
</body>
|
||||||
|
<footer>
|
||||||
|
<p>
|
||||||
|
2022-<span id="year">2022</span> | Eoghan Conlon | Email:
|
||||||
|
<a href = "mailto:hello@eoghanconlon.ie">hello@eoghanconlon.ie
|
||||||
|
</a>
|
||||||
|
| Discord: eoghanconlon74#1132 | Gitlab:
|
||||||
|
<a href = "https://gitlab.com/eoghanconlon73">
|
||||||
|
@eoghanconlon73
|
||||||
|
</a>
|
||||||
|
</p>
|
||||||
|
</footer>
|
||||||
|
</html>
|
41
src/blog/video_games/videogamesoverview.html
Normal file
41
src/blog/video_games/videogamesoverview.html
Normal file
|
@ -0,0 +1,41 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en">
|
||||||
|
<head>
|
||||||
|
<link rel="stylesheet" href="../../Test.css">
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<title>Video Games</title>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<h1>Eoghan Conlon</h1>
|
||||||
|
<p>
|
||||||
|
<a href="../../index.html">Home</a>
|
||||||
|
<a href="../index.html">Blogs</a>
|
||||||
|
</p>
|
||||||
|
<h2>Video Games</h2>
|
||||||
|
<p>One of my pastimes is playing video games. I hope to document the games that I play through this section of my blog.</p>
|
||||||
|
<h3>Games that I played</h3>
|
||||||
|
<table>
|
||||||
|
<tr>
|
||||||
|
<th>Name of the Game</th>
|
||||||
|
<th>Hours put into the game</th>
|
||||||
|
<th>Have I completed it</th>
|
||||||
|
<th>Platform Played On</th>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
<footer>
|
||||||
|
<p>
|
||||||
|
2022-<span id="year">2022</span> | Eoghan Conlon | Email:
|
||||||
|
<a href = "mailto:hello@eoghanconlon.ie">hello@eoghanconlon.ie
|
||||||
|
</a>
|
||||||
|
| Discord: eoghanconlon74#1132 | Gitlab:
|
||||||
|
<a href = "https://gitlab.com/eoghanconlon73">
|
||||||
|
@eoghanconlon73
|
||||||
|
</a>
|
||||||
|
</p>
|
||||||
|
</footer>
|
||||||
|
<script>
|
||||||
|
/* I am a lazy fucker */
|
||||||
|
document.getElementById('year').textContent = new Date().getFullYear().toString()
|
||||||
|
</script>
|
||||||
|
</body>
|
||||||
|
</html>
|
172
src/index.html
172
src/index.html
|
@ -1,11 +1,163 @@
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<html lang="en">
|
<html lang="en-IE">
|
||||||
<head>
|
<head>
|
||||||
<title></title>
|
<link rel="stylesheet" href="Test.css">
|
||||||
</head>
|
<meta charset="UTF-8">
|
||||||
<body>
|
<title>Home</title>
|
||||||
<div>
|
</head>
|
||||||
<h1>WIP</h1>
|
<body>
|
||||||
</div>
|
<h1>Eoghan Conlon</h1>
|
||||||
</body>
|
<p>
|
||||||
</html>
|
Home
|
||||||
|
<a href="blog/index.html">
|
||||||
|
Blogs
|
||||||
|
</a>
|
||||||
|
<a href="presentations/">Presentations</a>
|
||||||
|
</p>
|
||||||
|
<main>
|
||||||
|
<h2>About me</h2>
|
||||||
|
<p>I am a <span id="age">19</span>-year-old college student, specialising in Cyber Security and IT Forensics.</p>
|
||||||
|
<h2>Projects</h2>
|
||||||
|
<! -- Shamelessly taken from the w3Schools tutorial on html tables -->
|
||||||
|
<div class="wrapper">
|
||||||
|
<table>
|
||||||
|
<tr>
|
||||||
|
<th>Project</th>
|
||||||
|
<th>Years</th>
|
||||||
|
<th>Languages Used</th>
|
||||||
|
<th>Notes</th>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td><a href="https://gitlab.com/mywebsite4/v2">This Website</a></td>
|
||||||
|
<td>2022 to present</td>
|
||||||
|
<td>HTML and CSS</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td><a href="https://gitlab.com/college_EC/semester-4/ed5042_labs">ED5042 Coursework</a></td>
|
||||||
|
<td>January 2023 to May 2023</td>
|
||||||
|
<td>Java & XML</td>
|
||||||
|
<td>Individual projects and labs are broken down by chapter while the final project is in its own
|
||||||
|
repository
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td><a href="https://gitlab.com/college_EC/sem3/ce-4703-project">CE4703 project</a></td>
|
||||||
|
<td>November to December 2023</td>
|
||||||
|
<td>C</td>
|
||||||
|
<td>It was a group project. Group members in the repository</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td><a href="https://gitlab.com/college_EC/completed_projects/et4132-project">ET4132 project</a></td>
|
||||||
|
<td>September to December 2022</td>
|
||||||
|
<td>HTML, PHP, MySQL</td>
|
||||||
|
<td>Group project, members listed in the repository</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td><a href="https://gitlab.com/c2842/misc/classbot">Classbot count module</a></td>
|
||||||
|
<td>2022 to present</td>
|
||||||
|
<td>Typescript</td>
|
||||||
|
<td>Worked in my own <a href="https://gitlab.com/college_EC/summer-y1-to-y2/classbot">repository</a> and
|
||||||
|
meged in
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td><a href="./CS4043project.html">Project for the CS4043 module in college</a></td>
|
||||||
|
<td>2022 - 2022</td>
|
||||||
|
<td>C# (see note on page)</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td><a href="https://gitlab.com/c2842/semester-1/cs4012-project">Project for the CS4012 module in
|
||||||
|
college</a></td>
|
||||||
|
<td>2021 - 2021</td>
|
||||||
|
<td>HTML</td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
<h2>History</h2>
|
||||||
|
<div class="wrapper">
|
||||||
|
<table>
|
||||||
|
<tr>
|
||||||
|
<th>Location</th>
|
||||||
|
<th>Start</th>
|
||||||
|
<th>End</th>
|
||||||
|
<th>Position</th>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>Intel Shannon</td>
|
||||||
|
<td>2024</td>
|
||||||
|
<td>2024</td>
|
||||||
|
<td>Cloud Software Engineer</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>UL Computer Society</td>
|
||||||
|
<td>2023</td>
|
||||||
|
<td>Current</td>
|
||||||
|
<td>Treasurer</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>University of Limerick</td>
|
||||||
|
<td>2021</td>
|
||||||
|
<td>Current</td>
|
||||||
|
<td>Student</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>Barack Obama Plaza</td>
|
||||||
|
<td>2021</td>
|
||||||
|
<td>Current</td>
|
||||||
|
<td>Part-Time Sales Assistant</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>University of Limerick</td>
|
||||||
|
<td>2023</td>
|
||||||
|
<td>2023</td>
|
||||||
|
<td>ICT Learning Center Drop-in tutor</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>UL Computer Society</td>
|
||||||
|
<td>2022</td>
|
||||||
|
<td>2023</td>
|
||||||
|
<td>Health & Safety, Equipment and Training Officer</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>University of Limerick</td>
|
||||||
|
<td>2022</td>
|
||||||
|
<td>2022</td>
|
||||||
|
<td>PSLG Leader for CS4141</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>Our Lady's Secondary School</td>
|
||||||
|
<td>2015</td>
|
||||||
|
<td>2021</td>
|
||||||
|
<td>Student</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>Gaelscoil An tSlí Dála</td>
|
||||||
|
<td>2007</td>
|
||||||
|
<td>2015</td>
|
||||||
|
<td>Student</td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
</main>
|
||||||
|
<footer>
|
||||||
|
<p>
|
||||||
|
2022-<span id="year">2022</span> | Eoghan Conlon | Email:
|
||||||
|
<a href="mailto:hello@eoghanconlon.ie">hello@eoghanconlon.ie
|
||||||
|
</a>
|
||||||
|
| Discord: eoghanconlon73 | Gitlab:
|
||||||
|
<a href="https://gitlab.com/eoghanconlon73">
|
||||||
|
@eoghanconlon73
|
||||||
|
</a>
|
||||||
|
</p>
|
||||||
|
</footer>
|
||||||
|
<script>
|
||||||
|
/* I am a lazy fucker */
|
||||||
|
document.getElementById('year').textContent = new Date().getFullYear().toString()
|
||||||
|
</script>
|
||||||
|
<script>
|
||||||
|
currentYear = new Date().getFullYear().toString();
|
||||||
|
age = parseInt(currentYear) - 2003;
|
||||||
|
document.getElementById('age').textContent = age;
|
||||||
|
</script>
|
||||||
|
</body>
|
||||||
|
</html>
|
56
src/presentations/Test.css
Normal file
56
src/presentations/Test.css
Normal file
|
@ -0,0 +1,56 @@
|
||||||
|
/*There is nothing more permanent then a temporary solution*/
|
||||||
|
body{
|
||||||
|
background-color: slategrey;
|
||||||
|
}
|
||||||
|
h1{
|
||||||
|
color: azure;
|
||||||
|
text-align: center;
|
||||||
|
font-family: Arial, serif;
|
||||||
|
font-size: 30px;
|
||||||
|
}
|
||||||
|
h2{
|
||||||
|
color: azure;
|
||||||
|
text-align: center;
|
||||||
|
font-family: Arial, serif;
|
||||||
|
font-size: 25px;
|
||||||
|
}
|
||||||
|
h3{
|
||||||
|
color: azure;
|
||||||
|
text-align: center;
|
||||||
|
font-family: Arial, serif;
|
||||||
|
font-size: 20px;
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
h4{
|
||||||
|
color: azure;
|
||||||
|
text-align: center;
|
||||||
|
font-family: Arial, serif;
|
||||||
|
font-size: 20px;
|
||||||
|
font-weight: bolder;
|
||||||
|
}
|
||||||
|
p{
|
||||||
|
font-family: Arial, serif;
|
||||||
|
font-size: 20px;
|
||||||
|
color: white;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
table{
|
||||||
|
color: aliceblue;
|
||||||
|
font-family: Arial, serif;
|
||||||
|
font-size: 15px;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
th{
|
||||||
|
font-size: 20px;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
footer p{
|
||||||
|
font-size: 10px;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
.wrapper{
|
||||||
|
height: auto;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
}
|
BIN
src/presentations/college/FYP/Screenshot_20241030_151237.png
(Stored with Git LFS)
Normal file
BIN
src/presentations/college/FYP/Screenshot_20241030_151237.png
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
src/presentations/college/FYP/mermaid-diagram-2024-10-21-172652.png
(Stored with Git LFS)
Normal file
BIN
src/presentations/college/FYP/mermaid-diagram-2024-10-21-172652.png
(Stored with Git LFS)
Normal file
Binary file not shown.
241
src/presentations/college/FYP/sem01_presentation.md
Normal file
241
src/presentations/college/FYP/sem01_presentation.md
Normal file
|
@ -0,0 +1,241 @@
|
||||||
|
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||||
|
title = "A Qt representation of Merkle Trees"
|
||||||
|
date = 2023-08-07
|
||||||
|
slides = true
|
||||||
|
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||||
|
|
||||||
|
### A Qt representation of Merkle Trees
|
||||||
|
|
||||||
|
Student: Eoghan Conlon
|
||||||
|
Supervisor: Richard Conway
|
||||||
|
|
||||||
|
-------------------------------------------------------------------------
|
||||||
|
|
||||||
|
* **Introduction**
|
||||||
|
* Motivation for the project
|
||||||
|
* What are Merkle Trees & what are they used for?
|
||||||
|
* Technology used in this project
|
||||||
|
* Future plans
|
||||||
|
* Conclusion
|
||||||
|
|
||||||
|
-------------------------------------------------------------------------
|
||||||
|
|
||||||
|
* Introduction
|
||||||
|
* **Motivation for the project**
|
||||||
|
* Gain experience in different programming languages and tools
|
||||||
|
* Gain more knowledge on cryptography through the theory part
|
||||||
|
* What are Merkle Trees & what are they used for?
|
||||||
|
* Technology used in this project
|
||||||
|
* Future plans
|
||||||
|
* Conclusion
|
||||||
|
|
||||||
|
-------------------------------------------------------------------------
|
||||||
|
|
||||||
|
* Introduction
|
||||||
|
* Motivation for the project
|
||||||
|
* **Gain experience in different programming languages and tools**
|
||||||
|
* Gain more knowledge on cryptography through the theory part
|
||||||
|
* What are Merkle Trees & what are they used for?
|
||||||
|
* Technology used in this project
|
||||||
|
* Future plans
|
||||||
|
* Conclusion
|
||||||
|
|
||||||
|
-------------------------------------------------------------------------
|
||||||
|
|
||||||
|
* Introduction
|
||||||
|
* Motivation for the project
|
||||||
|
* Gain experience in different programming languages and tools
|
||||||
|
* **Gain more knowledge on cryptography through the theory part**
|
||||||
|
* What are Merkle Trees & what are they used for?
|
||||||
|
* Technology used in this project
|
||||||
|
* Future plans
|
||||||
|
* Conclusion
|
||||||
|
|
||||||
|
-------------------------------------------------------------------------
|
||||||
|
|
||||||
|
* Introduction
|
||||||
|
* Motivation for the project
|
||||||
|
* **What are Merkle Trees & what are they used for?**
|
||||||
|
* Merkle Tree
|
||||||
|
* Merkle Signature Scheme
|
||||||
|
* Alternatives: One-Time Signature Schemes
|
||||||
|
* Technology used in this project
|
||||||
|
* Future plans
|
||||||
|
* Conclusion
|
||||||
|
|
||||||
|
-------------------------------------------------------------------------
|
||||||
|
|
||||||
|
* **Merkle Tree**
|
||||||
|
<img src="./mermaid-diagram-2024-10-21-172652.png" height="250"></img>
|
||||||
|
* Merkle Signature Scheme
|
||||||
|
|
||||||
|
|
||||||
|
-------------------------------------------------------------------------
|
||||||
|
|
||||||
|
* Introduction
|
||||||
|
* Motivation for the project
|
||||||
|
* What are Merkle Trees & what are they used for?
|
||||||
|
* Merkle Tree
|
||||||
|
* **Merkle Signature Scheme**
|
||||||
|
* What if fixes?
|
||||||
|
* Issues
|
||||||
|
* Alternatives: One-Time Signature Schemes
|
||||||
|
* Technology used in this project
|
||||||
|
* Future plans
|
||||||
|
* Conclusion
|
||||||
|
|
||||||
|
-------------------------------------------------------------------------
|
||||||
|
|
||||||
|
* Introduction
|
||||||
|
* Motivation for the project
|
||||||
|
* What are Merkle Trees & what are they used for?
|
||||||
|
* Merkle Tree
|
||||||
|
* Merkle Signature Scheme
|
||||||
|
* **What if fixes?**
|
||||||
|
* Issues
|
||||||
|
* Alternatives: One-Time Signature Schemes
|
||||||
|
* Technology used in this project
|
||||||
|
* Future plans
|
||||||
|
* Conclusion
|
||||||
|
|
||||||
|
-------------------------------------------------------------------------
|
||||||
|
|
||||||
|
* Introduction
|
||||||
|
* Motivation for the project
|
||||||
|
* What are Merkle Trees & what are they used for?
|
||||||
|
* Merkle Tree
|
||||||
|
* Merkle Signature Scheme
|
||||||
|
* What if fixes?
|
||||||
|
* **Issues**
|
||||||
|
* Alternatives: One-Time Signature Schemes
|
||||||
|
* Technology used in this project
|
||||||
|
* Future plans
|
||||||
|
* Conclusion
|
||||||
|
|
||||||
|
-------------------------------------------------------------------------
|
||||||
|
|
||||||
|
* Introduction
|
||||||
|
* Motivation for the project
|
||||||
|
* What are Merkle Trees & what are they used for?
|
||||||
|
* Merkle Tree
|
||||||
|
* Merkle Signature Scheme
|
||||||
|
* **Alternatives: One-Time Signature Schemes**
|
||||||
|
* Lamport Scheme
|
||||||
|
* Winternitz Scheme
|
||||||
|
* Technology used in this project
|
||||||
|
* Future plans
|
||||||
|
* Conclusion
|
||||||
|
|
||||||
|
-------------------------------------------------------------------------
|
||||||
|
|
||||||
|
* Introduction
|
||||||
|
* Motivation for the project
|
||||||
|
* What are Merkle Trees & what are they used for?
|
||||||
|
* Merkle Tree
|
||||||
|
* Merkle Signature Scheme
|
||||||
|
* Alternatives: One-Time Signature Schemes
|
||||||
|
* **Lamport Scheme**
|
||||||
|
* Advantages
|
||||||
|
* Disadvantages
|
||||||
|
* Winternitz Scheme
|
||||||
|
* Technology used in this project
|
||||||
|
* Future plans
|
||||||
|
* Conclusion
|
||||||
|
|
||||||
|
-------------------------------------------------------------------------
|
||||||
|
|
||||||
|
* Introduction
|
||||||
|
* Motivation for the project
|
||||||
|
* What are Merkle Trees & what are they used for?
|
||||||
|
* Merkle Tree
|
||||||
|
* Merkle Signature Scheme
|
||||||
|
* Alternatives: One-Time Signature Schemes
|
||||||
|
* Lamport Scheme
|
||||||
|
* **Winternitz Scheme**
|
||||||
|
* Advantages
|
||||||
|
* Disadvantages
|
||||||
|
* Technology used in this project
|
||||||
|
* Future plans
|
||||||
|
* Conclusion
|
||||||
|
|
||||||
|
-------------------------------------------------------------------------
|
||||||
|
|
||||||
|
* Introduction
|
||||||
|
* Motivation for the project
|
||||||
|
* What are Merkle Trees & what are they used for?
|
||||||
|
* **Technology used in this project**
|
||||||
|
* C++
|
||||||
|
* Qt
|
||||||
|
* Linux
|
||||||
|
* Git
|
||||||
|
* Plan for the rest of the AY
|
||||||
|
* Conclusion
|
||||||
|
|
||||||
|
-------------------------------------------------------------------------
|
||||||
|
|
||||||
|
* Introduction
|
||||||
|
* Motivation for the project
|
||||||
|
* What are Merkle Trees & what are they used for?
|
||||||
|
* Technology used in this project
|
||||||
|
* **C++**
|
||||||
|
* Qt
|
||||||
|
* Linux
|
||||||
|
* Git
|
||||||
|
* Plan for the rest of the AY
|
||||||
|
* Conclusion
|
||||||
|
|
||||||
|
-------------------------------------------------------------------------
|
||||||
|
|
||||||
|
* Qt
|
||||||
|
<img src="./Screenshot_20241030_151237.png" height="250"></img>
|
||||||
|
-------------------------------------------------------------------------
|
||||||
|
|
||||||
|
* Introduction
|
||||||
|
* Motivation for the project
|
||||||
|
* What are Merkle Trees & what are they used for?
|
||||||
|
* Technology used in this project
|
||||||
|
* C++
|
||||||
|
* Qt
|
||||||
|
* **Linux**
|
||||||
|
* Git
|
||||||
|
* Plan for the rest of the AY
|
||||||
|
* Conclusion
|
||||||
|
|
||||||
|
-------------------------------------------------------------------------
|
||||||
|
|
||||||
|
* Introduction
|
||||||
|
* Motivation for the project
|
||||||
|
* What are Merkle Trees & what are they used for?
|
||||||
|
* Technology used in this project
|
||||||
|
* C++
|
||||||
|
* Qt
|
||||||
|
* Linux
|
||||||
|
* **Git**
|
||||||
|
* Plan for the rest of the AY
|
||||||
|
* Conclusion
|
||||||
|
|
||||||
|
-------------------------------------------------------------------------
|
||||||
|
|
||||||
|
* Introduction
|
||||||
|
* Motivation for the project
|
||||||
|
* What are Merkle Trees & what are they used for?
|
||||||
|
* Technology used in this project
|
||||||
|
* **Plan for the rest of the AY**
|
||||||
|
* Continue to go through Qt book advise by Supervisor
|
||||||
|
* Have a ready to submit software by the end of Sem 2 Week 2
|
||||||
|
* Iterate on it, adding more complex features and fixing bugs in 2 week bursts past that
|
||||||
|
* Work on Semester 2 submissions as they come up
|
||||||
|
* Conclusion
|
||||||
|
|
||||||
|
-------------------------------------------------------------------------
|
||||||
|
|
||||||
|
* Introduction
|
||||||
|
* Motivation for the project
|
||||||
|
* What are Merkle Trees & what are they used for?
|
||||||
|
* Technology used in this project
|
||||||
|
* Plan for the rest of the AY
|
||||||
|
* **Conclusion & Questions**
|
||||||
|
|
||||||
|
-------------------------------------------------------------------------
|
||||||
|
|
||||||
|
### Thank you
|
|
@ -38,7 +38,7 @@
|
||||||
<h2>Survey Sensors</h2>
|
<h2>Survey Sensors</h2>
|
||||||
</section>
|
</section>
|
||||||
<section class='slide' id='7' style='display:none'>
|
<section class='slide' id='7' style='display:none'>
|
||||||
<img src="./speedCameraVan.jpg" height=250></img>
|
<img src="speedCameraVan.jpg" height=250></img>
|
||||||
<p>
|
<p>
|
||||||
Image taken by: <a target='_blank' rel='noopener noreferrer' href='https://www.flickr.com/photos/rossendalewadey/44737927100/in/photostream/'>Robert Wade</a> <a target='_blank' rel='noopener noreferrer' href='https://creativecommons.org/licenses/by-nc-sa/2.0/'>Licence</a>
|
Image taken by: <a target='_blank' rel='noopener noreferrer' href='https://www.flickr.com/photos/rossendalewadey/44737927100/in/photostream/'>Robert Wade</a> <a target='_blank' rel='noopener noreferrer' href='https://creativecommons.org/licenses/by-nc-sa/2.0/'>Licence</a>
|
||||||
</p>
|
</p>
|
12
src/presentations/index.md
Normal file
12
src/presentations/index.md
Normal file
|
@ -0,0 +1,12 @@
|
||||||
|
## Eoghan Conlon
|
||||||
|
[Home](../index.html) [Blog](../blog/index.html) Presentations
|
||||||
|
|
||||||
|
These are all the presentations that I have done since September 2023, unfortunately not all of them will have videos
|
||||||
|
available, but where possible, I will link the video. Some of them I unfortunately don't know the date that they were complete,
|
||||||
|
as as a result they just have the year, I do remember that they were completed over the September to October time period.
|
||||||
|
|
||||||
|
| Date | Presentation | Video |
|
||||||
|
|------------|-----------------------------------------------------------------------------------------------------------------|-------|
|
||||||
|
| 2023 | [Sensors (for ET4435)](./college/et4435/sensors/sensors_presentation.html) | N/A |
|
||||||
|
| 2023 | [Microcontrollers (for ET4435)](./college/et4435/microcontroller_presentation_and_images/microcontrollers.html) | N/A |
|
||||||
|
| 13/11/2023 | [Application (for ET4435)](./college/et4435/Application/presentation.html) | N/A |
|
1366
src/templates/highlight.min.js
vendored
Normal file
1366
src/templates/highlight.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
1
src/templates/hybrid.min.css
vendored
Normal file
1
src/templates/hybrid.min.css
vendored
Normal file
|
@ -0,0 +1 @@
|
||||||
|
pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{background:#1d1f21;color:#c5c8c6}.hljs span::selection,.hljs::selection{background:#373b41}.hljs span::-moz-selection,.hljs::-moz-selection{background:#373b41}.hljs-name,.hljs-title{color:#f0c674}.hljs-comment,.hljs-meta,.hljs-meta .hljs-keyword{color:#707880}.hljs-deletion,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol{color:#c66}.hljs-addition,.hljs-doctag,.hljs-regexp,.hljs-selector-attr,.hljs-selector-pseudo,.hljs-string{color:#b5bd68}.hljs-attribute,.hljs-code,.hljs-selector-id{color:#b294bb}.hljs-bullet,.hljs-keyword,.hljs-selector-tag,.hljs-tag{color:#81a2be}.hljs-subst,.hljs-template-tag,.hljs-template-variable,.hljs-variable{color:#8abeb7}.hljs-built_in,.hljs-quote,.hljs-section,.hljs-selector-class,.hljs-type{color:#de935f}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700}
|
74
src/templates/powerpoint.html
Normal file
74
src/templates/powerpoint.html
Normal file
|
@ -0,0 +1,74 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang='en'>
|
||||||
|
<head>
|
||||||
|
<title>{title}</title>
|
||||||
|
|
||||||
|
<!-- for code formatting -->
|
||||||
|
<link rel="stylesheet" href="../templates/hybrid.min.css">
|
||||||
|
<script src="../templates/highlight.min.js"></script>
|
||||||
|
<script>hljs.highlightAll()</script>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
{body}
|
||||||
|
</body>
|
||||||
|
<style>
|
||||||
|
section.slide {
|
||||||
|
position: absolute;
|
||||||
|
top: 50%;
|
||||||
|
left: 50%;
|
||||||
|
transform: translate(-50%, -50%) scale(3);
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
<script>
|
||||||
|
let slide_number = 0;
|
||||||
|
let slide_max = 0;
|
||||||
|
|
||||||
|
for (let section of document.querySelectorAll("section.slide")) {
|
||||||
|
let number = parseInt(section.id, 10);
|
||||||
|
if (number > slide_max) {
|
||||||
|
slide_max = number;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
slide_next = (change) => {
|
||||||
|
// make old hidden
|
||||||
|
document.getElementById(`${slide_number}`).style.display = "none";
|
||||||
|
|
||||||
|
// make the change
|
||||||
|
let slide_number_new = slide_number + change;
|
||||||
|
if (slide_number_new >= 0 && slide_number_new <= slide_max) {
|
||||||
|
slide_number += change;
|
||||||
|
}
|
||||||
|
|
||||||
|
// make current visible
|
||||||
|
document.getElementById(`${slide_number}`).style.display = "block";
|
||||||
|
}
|
||||||
|
|
||||||
|
// add event listner
|
||||||
|
onkeydown = (event) => {
|
||||||
|
if (event.key === "ArrowRight" || event.key === "ArrowDown") {
|
||||||
|
slide_next(1);
|
||||||
|
}
|
||||||
|
if (event.key === "ArrowLeft" || event.key === "ArrowUp") {
|
||||||
|
slide_next(-1);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
on_events = (clickTargetWidth, xCoordInClickTarget) => {
|
||||||
|
if (clickTargetWidth / 2 > xCoordInClickTarget) {
|
||||||
|
slide_next(-1);
|
||||||
|
} else {
|
||||||
|
slide_next(1);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
onclick = (event) => {
|
||||||
|
on_events(event.target.offsetWidth, event.clientX - event.target.getBoundingClientRect().left);
|
||||||
|
};
|
||||||
|
ontouchstart = (event) => {
|
||||||
|
on_events(event.target.offsetWidth, event.touches[0].clientX - event.target.getBoundingClientRect().left);
|
||||||
|
};
|
||||||
|
// show the first slide
|
||||||
|
slide_next(0)
|
||||||
|
</script>
|
||||||
|
</html>
|
11
src/templates/template.html
Normal file
11
src/templates/template.html
Normal file
|
@ -0,0 +1,11 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en-IE">
|
||||||
|
<head>
|
||||||
|
<title>{title}</title>
|
||||||
|
<link rel="stylesheet" href="./Test.css">
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
{body}
|
||||||
|
</body>
|
||||||
|
</html>
|
Loading…
Reference in a new issue