Skip to content

Instantly share code, notes, and snippets.


Márton Salomváry salomvary

View GitHub Profile
salomvary / 20 Ways of Writing React Components.tsx
Last active Oct 17, 2020
20 Ways of Writing React Components
View 20 Ways of Writing React Components.tsx
import React, { createElement, Component, FC, Fragment, FunctionComponent, ReactNode } from 'react';
import createReactClass from 'create-react-class';
const C = () => <></>;
const C: FC = () => <></>;
const C: () => ReactNode = () => <></>;
const C: FunctionComponent = () => <></>;
const C = (props) => <>{props.p}</>;
const C: (props: {p: string}) => ReactNode = (props) => <>{props.p}</>;
const C = (props: {p: string}) => <>{props.p}</>;
salomvary /
Last active Aug 4, 2020
Electron Entitlements for Mac App Store

These are the entitlements files I managed to build an Electron app for Mac App Store distribution.

Tested with Electron 8 on macOS Catalina and Mojave.

Used latest electron-builder for packaging (see package.json for configuration). Should work with other packaging tools but hardened runtime must be turned off.

# Usage:
# - Install jq:
# - Add this script to your path, eg. to /usr/local/bin
# - Add AWS access key id and secret access key to LastPass
# named "AWS Credentials for my-profile profile"
# - Add "credential_process = awscreds-lpass my-profile" to
# the respective profile in ~/.aws/config
View Is Gmail slow in Firefox.markdown

Is Gmail slow in Firefox?

I recently ranted about Gmail being slow in Firefox and decided to investigate and support my claim with numbers.

Here is a video illustrating the perceived speed (I could not capture how slow this sometimes actually gets but still looks slow):

My perceived annoying slowness looks like this:

  • Open a new Firefox tab with
import com.datastax.driver.core.querybuilder.Select;
import org.junit.Test;
import static com.datastax.driver.core.querybuilder.QueryBuilder.eq;
import static;
import static org.hamcrest.CoreMatchers.equalTo;
import static org.junit.Assert.assertThat;
public class QueryBuilderTest {
salomvary / example.scala
Created Dec 19, 2017
Parallel Composition of Scala Futures
View example.scala
import scala.concurrent.Future
case class Author(id: Long, name: String)
case class Publication(id: Long, authorId: Long, title:String)
case class AuthorPublications(author: Author, publications: List[Publication])
def findAuthor(query: String): Future[Long] = ???
salomvary /
Last active Oct 4, 2017
Continuous delivery vs integration vs. deployment

"Continuous delivery (CD) is a software engineering approach in which teams produce software in short cycles, ensuring that the software can be reliably released at any time."

"In software engineering, continuous integration (CI) is the practice of merging all developer working copies to a shared mainline several times a day."

"Continuous deployment means that every change is automatically deployed to production. Continuous delivery means that the team ensures every change can be deployed to production but may choose not to do it, usually due to business reasons. In order to do continuous deployment one must be doing continuous delivery."

View electron-hello-world-main.js
const {app, BrowserWindow} = require('electron')
app.on('ready', () => {
const win = new BrowserWindow()
// or
salomvary / gb-vs-uk.markdown
Last active Jan 21, 2019
TL;DR: GB vs. UK
View gb-vs-uk.markdown

Great Britain, United Kingdom and other related stuff

Great Britain

  • Great Britain is an island in Europe.
  • Great Britain refers geographically to the island of Great Britain, politically to England, Scotland and Wales in combination.

United Kingdom

  • The United Kingdom of Great Britain and Northern Ireland, commonly known as the United Kingdom (UK) or Britain, is a sovereign state in Europe [...]
You can’t perform that action at this time.