Skip to content

Instantly share code, notes, and snippets.

View PetarIvancevic's full-sized avatar

Petar Ivancevic PetarIvancevic

  • Dept
  • Croatia
View GitHub Profile
function sum (a, b) {
return a + b
}
console.log(sum(10, 5))
@PetarIvancevic
PetarIvancevic / plugin.js
Created October 5, 2018 12:03
Plugin development code
videojs.registerPlugin('playerPlugin', function (opts) {
...
})
if (process.env.NODE_ENV !== 'production') {
const devPlayerOptions = {
"customOption": "customOptionValue",
}
videojs('player').playerPlugin(devPlayerOptions)
const discountFactor = 0.85
const trainingSets = []
for (let i = 0; i < numMoves - 1; i++) {
let currentNetStateNormalized = netConfig.netNormalizedOutput(moves[i].boardVector)[0]
let reward = moves[i].reward
let nextNetStateNormalized = netConfig.netNormalizedOutput(moves[i + 1].boardVector)[0]
let netOutput = normalizeReluOutput(reward + discountFactor * nextNetStateNormalized)
@PetarIvancevic
PetarIvancevic / recommendingMovies.js
Created October 27, 2017 18:59
Movie recommendation
router.get('/movie', auth, async function (req, res) {
const {username} = req
const similarityData = _(await db.similarity.getBy(function (similarity) {
return _.includes(similarity.users, username)
})).orderBy('pcc', 'desc').take(5).value()
const users = _(similarityData).map(function (similarity) {
return {
..._.omit(similarity, 'users'),
username: _.remove(similarity.users, function (user) {
return user !== username
@PetarIvancevic
PetarIvancevic / similarUsers.js
Created October 27, 2017 18:58
Get similar users
router.get('/user', auth, async function (req, res) {
const {username} = req
const similarity = helper.sortByAlgorithm(await db.similarity.getBy(function (user) {
return _.includes(user.users, username)
}), 'pcc')
const usersSimilarities = await Promise.map(similarity, async function (similarityData) {
return {
...similarityData,
user: await db.user.get(_.remove(similarityData.users, function (user) {
@PetarIvancevic
PetarIvancevic / updateUserSimilarityScores.js
Created October 27, 2017 18:56
Update users similarity scores
async function updateUserSimilarityScores (username) {
const users = await db.user.getVals()
const mainUser = await db.user.get(username)
mainUser.reviews = await getUserMovieReviews(mainUser)
const mainUserMovies = _.map(mainUser.reviews, 'movieId')
return Promise.map(users, async function (user) {
user.reviews = await getUserMutualMovieReviews(user, mainUserMovies)
@PetarIvancevic
PetarIvancevic / pcc.js
Created October 27, 2017 18:54
Pearson correlation coefficient
function squaredNum (review) {
return Math.pow(review.rating, 2)
}
function pcc (user1, user2) {
const n = _.size(user1.reviews)
if (n === 0) {
return n
}
@PetarIvancevic
PetarIvancevic / euclideanDistance.js
Created October 27, 2017 18:52
Euclidean distance formula
function euclideanDistance (user1, user2) {
const n = _.size(user1.reviews)
let coefficient = 0
if (n === 0) {
return n
}
for (let i = 0; i < n; i++) {
coefficient += Math.pow(user1.reviews[i].rating - user2.reviews[i].rating, 2)
@PetarIvancevic
PetarIvancevic / Shopify tag filter groups for individual collection search
Last active August 17, 2023 08:12 — forked from darryn/Shopify tag filter groups
Create tag filter groups in Shopify.This snippet is designed to group and separate out collection tags. It requires the tags to share a common value prepended to the tag with an underscore. E.g. to create a separate tag filter group for 'brands', each product will need to be tagged with 'brand_Nike' or 'brand_Reebok'.Some of this is probably lon…