Skip to content

Instantly share code, notes, and snippets.

Volkan Unsal volkanunsal

Block or report user

Report or block volkanunsal

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
volkanunsal / request.json
Created Mar 29, 2019
Carto response missing `metadata.layers[0].tilejson.raster`
View request.json
"analyses": [
"id": "hoboken_parcels_2018",
"type": "source",
"params": {
"query": "SELECT cartodb_id, the_geom, the_geom_webmercator FROM hoboken_parcels_2018"
View gist:5634ef3182dfe5d5a1fd4ee4ccd422dd
Warning: Permanently added ',' (RSA) to the list of known hosts.
remote: Enumerating objects: 124317, done.
remote: Counting objects: 100% (122849/122849), done.
remote: Compressing objects: 100% (24435/24435), done.
remote: Total 120781 (delta 96165), reused 118908 (delta 94550), pack-reused 0
Receiving objects: 100% (120781/120781), 52.97 MiB | 18.03 MiB/s, done.
volkanunsal /
Last active Nov 30, 2018
Geostamping on Cardano

Geostamping is an active area of research in the Cardano community. In the last year, Cardano Foundation released a report detailing how a geostamp (combination of a timestamp and a geolocation) could be created for the blockchain using the open source GeoGnomo project.[1][2] The three geocoding techniques implemented by GeoGnomo include: QTS (Quarternary Triangular System), QRS (Quarternary Rectangular System) and VRS (Variable Rectangular System.) These algorithms work by dividing the earth into self-similar rectangles or triangles and giving each shape a unique label. Compared to the traditional approach of geocoding by latitude/longitude, these systems come with the benefit of a compact, human-readable representation, but at the cost of precision. The space-filling shapes used by GeoGnomo are not very precise because each algorithm uses only one type of shape, i.e. a triangle or a rectangle. Higher levels of resolution can be achieved by using Hilbert curves, a fractal shape that can fill a geometric spac

volkanunsal / Dockerfile.node
Last active Aug 30, 2018
Moving to Heroku container stack with Geospatial libraries
View Dockerfile.node
FROM volkanunsal/ruby
FROM volkanunsal/node as node
FROM volkanunsal/ruby:latest
COPY --from=node /usr/include/node /usr/include/node
COPY --from=node /usr/bin/node /usr/bin/node
COPY --from=node /usr/local/share/yarn /usr/local/share/yarn
COPY --from=node /usr/lib/node_modules /usr/lib/node_modules
RUN ln -s /usr/local/share/yarn/bin/yarn /usr/bin/yarn \
View error.txt
Run options: --seed 15413
# Running:
ArgumentError: unknown keyword: array
View Dockerfile
FROM ubuntu:14.04
# Install Node.js
RUN apt-get update -y && apt-get upgrade -y
RUN apt-get install --yes curl build-essential python zlib1g-dev clang make pkg-config
# Install Node
RUN curl --silent --location | bash -
RUN apt-get install --yes nodejs
View resource_mapping.rb
FromListing =*[
View perf.rake
namespace :perf do
task :rails_load do
ENV["RAILS_ENV"] ||= "production"
ENV["SECRET_KEY_BASE"] ||= "foofoofoo"
require 'rails'
View payload.json
"layers": [
"options": {
"cartocss": "#nyc_parcels {polygon-opacity:0.6; polygon-fill: #FFB927; [zoom > 14] {line-width: 0.6; line-color: white;}}",
"cartocss_version": "2.1.1",
"interactivity": "cartodb_id,borough,lotarea,landuse_name,yearbuilt,the_geom,ownername,lotarea,lotfront,lotdepth,assesstot,assessland,numbldgs,yearbuilt,bldgarea,numfloors,landuse,block,lot,bbl,unitstotal,condono,unitsres,easements,resarea,comarea,officearea,factryarea,otherarea,builtfar,residfar,commfar,zonedist1,borough,address",
"sql": "SELECT\n source.* FROM (SELECT * FROM nyc_parcels) source,\n (SELECT ST_GeomFromGeoJSON('{\"type\":\"MultiPolygon\",\"coordinates\":[[[[-73.9793586730957,40.7153870771602],[-74.0231323242188,40.6965181180946],[-74.0301704406738,40.7174688416884],[-73.9793586730957,40.7153870771602]]]]}') the_geom) target\n WHERE\n ST_Intersects(ST_SetSRID(source.the_geom, 4326),\n ST_SetSRID(target.the_geom, 4326))",
View gist:d1cadef212d88d87c6e29518047eebba
eval("'use strict';\n\nexports.__esModule = true;\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (, key)) { target[key] = source[key]; } } } return target; };\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\nvar _react = __webpack_require__(66);\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _reflexbox = __webpack_require__(2371);\n\nvar _styles = __webpack_require__(2501);\n\nvar _utilsMakeTable = __webpack_require__(2499);\n\nvar _utilsMakeTable2 = _interopRequireDefault(_utilsMakeTable);\n\nvar _actions = __webpack_require__(411);\n\nvar _actions2 = _interopRequireDefault(_actions);\n\nvar _reactRedux = __webpack_require__(391);\n\nvar _selectors = __webpack_require__(2502);\n\nvar _classnames = __webpack_require__(1775);\n\nvar _classnames2 = _interopRequireDefault(_classnames);\n\n__webpack_r
You can’t perform that action at this time.