Skip to content

Instantly share code, notes, and snippets.

View jonny-novikov's full-sized avatar
🎯
Work Anywhere; Enjoy Anytime;

Jonny Novikov jonny-novikov

🎯
Work Anywhere; Enjoy Anytime;
View GitHub Profile
@jonny-novikov
jonny-novikov / outline-server.sh
Created August 8, 2023 20:25
Install outline server script
#!/bin/bash
#
# Copyright 2018 The Outline Authors
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
@jonny-novikov
jonny-novikov / FizzBuzz.cs
Created May 7, 2023 10:08
FizzBuzz Problem solution in modern C#
using System;
using System.Linq;
foreach(var i in Enumerable.Range(1, 100)) {
var output = (i % 3, i % 5) switch
{
(0, 0) => "FizzBuzz",
(0, _) => "Fizz",
(_, 0) => "Buzz",
(_, _) => i.ToString()
@jonny-novikov
jonny-novikov / remove-boxes.cs
Last active May 6, 2023 13:18
Remove Boxes Problem
using System;
class Program {
public static void Main(string[] args) {
var test1 = new int[] { 1, 3, 2, 2, 2, 3, 4, 3, 1 };
var maxPoints = new Solution().RemoveBoxes(test1);
Console.WriteLine($"Maximum points: {maxPoints}");
}
}
@jonny-novikov
jonny-novikov / accenture-tver-jobs-2020.md
Last active April 15, 2020 11:04
Accenture Open Positions

Работа в Accenture

Технологический центр Accenture в Твери набирает сотрудников на новые крупные проекты.

Ребята предлагают зарплату выше вашего текущего уровня, топовые технологии, обучение и конференции за счёт компании, ДМС для сотрудников и их детей, фитнес и прочие плюшки.

Интервью проводятся онлайн, так что устроиться на работу можно не выходя из дома.

Подробности о вакансиях по ссылкам ниже.

Tver.IO Makers Meetup

When a player starts the game, we commit a #world, a #player, and some #obstacles. These will keep all of the essential state of the game. All of this information could have been stored on the world, but for clarity we break the important bits of state into objects that they effect.

  • The #world tracks the distance the player has travelled, the current game screen, and the high score.
  • The #player stores his current y position and (vertical) velocity.
  • The obstacles have their (horizontal) offset and gap widths. We put distance on the world and only keep two obstacles; rather than moving the player through the world, we keep the player stationary and move the world past the player. When an obstacle goes off screen, we will wrap it around, update the placement of its gap, and continue on.

Setup

MS Office prefixed style properties

mso-ansi-font-size

Note: Office only

mso-ansi-font-size: large | larger | <length> | medium | <percentage> | small | smaller | x-large | x-small | xx-large | xx-small
@jonny-novikov
jonny-novikov / main.cs
Last active September 12, 2018 10:42
dp-lab-1
using System;
using System.Linq;
using System.Collections.Generic;
public class DPLab1
{
public static Dictionary<int, int> memo = new Dictionary<int, int>();
public static int[] fib = new int[100];
public static int max_i = 3;
@jonny-novikov
jonny-novikov / index.js
Last active September 1, 2018 01:27
How to debug VueJS applications
// you can check dev/prod mode to enable/disable debug mode, then
// in your main file index.js or index.html insert following lines
if (typeof window !== "undefined" && window !== undefined) {
Vue.config.devtools = true;
Vue.config.debug = true;
// window.vue = new Vue(...); // optional you can expose new or existing main view model to global scope
window.Vue = Vue;
}
@jonny-novikov
jonny-novikov / Insert Image.yaml
Created August 19, 2018 21:29
Inserts an image to the current slide. - Shared with Script Lab
name: Insert Image
description: Inserts an image to the current slide.
author: jonny-novikov
host: POWERPOINT
api_set: {}
script:
content: |
$('#insert').click(run);
function run() {
@jonny-novikov
jonny-novikov / how-to-use.cs
Last active May 17, 2018 08:58
Run task in periodic manner
RunPeriodicAsync(() => { Console.WriteLine("Tick once a minute!"); }, TimeSpan.Zero, TimeSpan.FromMinutes(1), default(CancellationToken));