Наткнулся на выходных на оч. интересный обзор с размышлением о том, что вообще происходит с рынком разработки. Почему происходит снижение числа вакансий в области программной инженерии? Все достаточно хорошо видно на графиках (zero Interest rates тут про околонулевые ставки центробанков)
Мнение о производительности и кадрах
Оптимистичный прогноз
Пессимистичный прогноз
Влияние LLM на рынок труда
Я больше верю в "эффект COVID" чем в эффект AI. Многие поверили в новый WFH мир, наняли слишком много кадров, а многие не относящиеся к IT резко захотели в IT. Сейчас же AI и LLM скорее это вера, а вот реальный пузырь в сфере разработки начинает сдуваться. Но я верю что все, кому это нравилось и кто шел не ради денег, найдут себе место в новом мире с AI
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Я достаточно подробно разбирал внутренности SwiftData в статье, ничего особенного в ней нет. Так что поиск особенного продолжается. В этот раз снова порадовали Pointfree своим решением по использованию SQL со SwiftUI и UIKit:
@Observable
@Query
макроса Чем мне нравятся решения от PointFree, так это документацией:
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Task.sleep()
Task.yield()
Различия
Вывод
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Результаты и выводы
У меня только один вопрос: как они пришли к решению использовать Swift для сервера... Но опыт очень интересный
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Если кто-то вас спросит, почему стоит запускать пилот приложения сначала на iOS, можете смело ссылаться на эту аналитику:
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Продолжаем разбираться с "упрощениями" в Swift. В этот раз, нас спасают от небезопасной работы с контейнерами и расширяют возможности использования новых типов
Span
и RawSpan
в существующих контейнерах.Мотивация
Многие типы контейнеров из стандартной библиотеки могут предоставлять прямой доступ к своему внутреннему представлению. До сих пор это можно было сделать только небезопасным способом. Стандартная библиотека предоставляет эту небезопасную функциональность с помощью функций, принимающих замыкания, таких как
withUnsafeBufferPointer()
, withContiguousStorageIfAvailable()
и withUnsafeBytes()
. У этих функций есть несколько недостатков, самый заметный из которых — использование небезопасных типов, что делает их неприемлемыми в средах с повышенными требованиями к безопасности. API, принимающие замыкания, также могут быть сложны в сочетании с новыми функциями и друг с другом. Эти проблемы решаются с помощью Span. Согласно этому предложению, совместимые типы стандартной библиотеки будут предоставлять доступ к своему внутреннему представлению через вычисляемые свойства типа Span
и RawSpan
.#swift #evolution #proposals
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM