|
Hi, my name is Ivan Shikhalev. I've been working as a programmer / software developer / engineer since roughly the beginning of the millennium :) Professionally worked with the following languages/technologies:
For personal projects, I prefer:
Learn more about me in detail on my blog — https://shikhalev.github.io/ (in russian). Regarding this profile and my activity on GitHub, I want to point out that I moved the most significant projects from the main profile to separate "organizations" — this is more convenient for many reasons. Preferred ways to get in touch (in order of preference):
I prefer project-based work and am permanently open to proposals. |
Привет, меня зовут Иван Шихалев. Я работаю программистом примерно с начала тысячелетия :) Профессионально работал со следующими языками/технологиями:
При этом для личных проектов предпочитаю:
Более подробно и разносторонне обо мне можно узнать в блоге — https://shikhalev.github.io/. Что касается данного профиля и моей активности на GitHub, хочу обратить внимание на то, что я перенес наиболее существенные проекты из собственно профиля в отдельные «организации» — так, по многим причинам, удобнее. Предпочтительные способы связи (в порядке убывания предпочтений):
Предпочитаю проектную работу и перманентно открыт к предложениям. |
| CARVIEW |
Select Language
HTTP/2 200
date: Mon, 26 Jan 2026 16:14:16 GMT
content-type: text/html; charset=utf-8
vary: X-PJAX, X-PJAX-Container, Turbo-Visit, Turbo-Frame, X-Requested-With,Accept-Encoding, Accept, X-Requested-With
etag: W/"bd9b6cc6f453b8b07419814b364a82e9"
cache-control: max-age=0, private, must-revalidate
strict-transport-security: max-age=31536000; includeSubdomains; preload
x-frame-options: deny
x-content-type-options: nosniff
x-xss-protection: 0
referrer-policy: origin-when-cross-origin, strict-origin-when-cross-origin
content-security-policy: default-src 'none'; base-uri 'self'; child-src github.githubassets.com github.com/assets-cdn/worker/ github.com/assets/ gist.github.com/assets-cdn/worker/; connect-src 'self' uploads.github.com www.githubstatus.com collector.github.com raw.githubusercontent.com api.github.com github-cloud.s3.amazonaws.com github-production-repository-file-5c1aeb.s3.amazonaws.com github-production-upload-manifest-file-7fdce7.s3.amazonaws.com github-production-user-asset-6210df.s3.amazonaws.com *.rel.tunnels.api.visualstudio.com wss://*.rel.tunnels.api.visualstudio.com github.githubassets.com objects-origin.githubusercontent.com copilot-proxy.githubusercontent.com proxy.individual.githubcopilot.com proxy.business.githubcopilot.com proxy.enterprise.githubcopilot.com *.actions.githubusercontent.com wss://*.actions.githubusercontent.com productionresultssa0.blob.core.windows.net/ productionresultssa1.blob.core.windows.net/ productionresultssa2.blob.core.windows.net/ productionresultssa3.blob.core.windows.net/ productionresultssa4.blob.core.windows.net/ productionresultssa5.blob.core.windows.net/ productionresultssa6.blob.core.windows.net/ productionresultssa7.blob.core.windows.net/ productionresultssa8.blob.core.windows.net/ productionresultssa9.blob.core.windows.net/ productionresultssa10.blob.core.windows.net/ productionresultssa11.blob.core.windows.net/ productionresultssa12.blob.core.windows.net/ productionresultssa13.blob.core.windows.net/ productionresultssa14.blob.core.windows.net/ productionresultssa15.blob.core.windows.net/ productionresultssa16.blob.core.windows.net/ productionresultssa17.blob.core.windows.net/ productionresultssa18.blob.core.windows.net/ productionresultssa19.blob.core.windows.net/ github-production-repository-image-32fea6.s3.amazonaws.com github-production-release-asset-2e65be.s3.amazonaws.com insights.github.com wss://alive.github.com wss://alive-staging.github.com api.githubcopilot.com api.individual.githubcopilot.com api.business.githubcopilot.com api.enterprise.githubcopilot.com; font-src github.githubassets.com; form-action 'self' github.com gist.github.com copilot-workspace.githubnext.com objects-origin.githubusercontent.com; frame-ancestors 'none'; frame-src viewscreen.githubusercontent.com notebooks.githubusercontent.com; img-src 'self' data: blob: github.githubassets.com media.githubusercontent.com camo.githubusercontent.com identicons.github.com avatars.githubusercontent.com private-avatars.githubusercontent.com github-cloud.s3.amazonaws.com objects.githubusercontent.com release-assets.githubusercontent.com secured-user-images.githubusercontent.com/ user-images.githubusercontent.com/ private-user-images.githubusercontent.com opengraph.githubassets.com marketplace-screenshots.githubusercontent.com/ copilotprodattachments.blob.core.windows.net/github-production-copilot-attachments/ github-production-user-asset-6210df.s3.amazonaws.com customer-stories-feed.github.com spotlights-feed.github.com objects-origin.githubusercontent.com *.githubusercontent.com; manifest-src 'self'; media-src github.com user-images.githubusercontent.com/ secured-user-images.githubusercontent.com/ private-user-images.githubusercontent.com github-production-user-asset-6210df.s3.amazonaws.com gist.github.com github.githubassets.com; script-src github.githubassets.com; style-src 'unsafe-inline' github.githubassets.com; upgrade-insecure-requests; worker-src github.githubassets.com github.com/assets-cdn/worker/ github.com/assets/ gist.github.com/assets-cdn/worker/
server: github.com
content-encoding: gzip
accept-ranges: bytes
set-cookie: _gh_sess=q%2FGxV1Wf8f%2B1sozR6y%2BAm0N2qRNZP3ZfSywddoiX4sIfE%2FUf%2FkoFCaQyVTt3ZJAgSdjk7e30oL061k3ak%2BWOwcYbrtnJCvTaSM7M57rmeKaCphy7QKPvZV%2FZ52EJPnDs4z7oA6tHnJePF1F%2BgpTUa7Ftmn7%2BSIkYY2ui5U4G6W%2BsiO6N5gHSHZWHaC5l5WPXqiDYxHI4kn2587L%2FVv1Pm3G1cPd4J%2Fafba11gigOLAEE8Jp19w0ozJ%2B%2BXNOK3togRLZK3Jxs4VjlsLvbII2CrA%3D%3D--B3mhPaHeOpq4%2B1yZ--cQv%2BsjBBBpDE126Q77wNdA%3D%3D; Path=/; HttpOnly; Secure; SameSite=Lax
set-cookie: _octo=GH1.1.1936271145.1769444055; Path=/; Domain=github.com; Expires=Tue, 26 Jan 2027 16:14:15 GMT; Secure; SameSite=Lax
set-cookie: logged_in=no; Path=/; Domain=github.com; Expires=Tue, 26 Jan 2027 16:14:15 GMT; HttpOnly; Secure; SameSite=Lax
x-github-request-id: D4FA:31B0BF:43E767:4F6CE8:697792D7
shikhalev (Ivan Shikhalev) · GitHub
Skip to content
Navigation Menu
{{ message }}
Pinned Loading
-
-
jekyll-is/jekyll-is-announcer
jekyll-is/jekyll-is-announcer PublicAnnouncing new blog posts (to Telegram channel)
Ruby
-
inat-get/inat-get
inat-get/inat-get PublicA toolset for fetching and processing data from iNaturalist.org
Ruby 1
-
inat-get/inat-channel
inat-get/inat-channel PubliciNaturalist Telegram Bot: Posts random popular observations from configurable API queries
Ruby
-
-
Something went wrong, please refresh the page to try again.
If the problem persists, check the GitHub status page or contact support.
If the problem persists, check the GitHub status page or contact support.
You can’t perform that action at this time.