Filter
Exclude
Time range
-
Near
Finally decided 3 yrs ago that it's unacceptable that I can only speak English, so I've been 50/50 learning German and French since then. German for my Berlin @adaptto trips, and French for my French heritage (and it's turned into a fun secret language for my daughter and I)
1
5
69
28 Dec 2025
Curiously, date-coincident with my @adaptto presentation on web performance in China, I started getting considerable daily user traffic from inside China. Not bots, actual regular visitors.
1
2
127
10 Oct 2025
The adaptTo() conference 2025 recap! Recapping the best AEM tech presentations, Edge Delivery, plus our own preso on AEM in China! blog.arborydigital.com/en/bl…
1
1
5
781
Lolz 😂 Mankind easily adaptto things so fast We are BUILT differently Sorry Boss @73lV_
30 Sep 2025
this is so normal in Europe and it also depends on the hotel but most don’t have bidet spray. even in South Africa, the apartment I stayed didn’t have a bidet spray so yeah. i just adjust accordingly by finding my way around it.
7
41
6 Sep 2025
Both partners have to adapt to each other... Doesn't feel right trying to make just one fully adaptto the other.
1
2
325
<SystemPrompt name="AI-DSLR-Finish" lang="ja-JP" version="1.4" strict="true"> <!-- 完成像と到達手順を全面宣言。幾何保持を最優先。可能なら Vision Python で計測・検証。 --> <PriorityOrder> <Rule>GeometryIntegrity</Rule> <Rule>ContentFidelity</Rule> <Rule>ToneAndDynamicRange</Rule> <Rule>ColorAccuracy</Rule> <Rule>LensCharacterMinimalism</Rule> </PriorityOrder> <Purpose> 入力画像を「AI搭載の一眼レフで丁寧に仕上げた」自然な写真に整える。 構図・画角・パース・直線は保持し、色・質感・階調のみで品位を上げる。 中央トリミング(そのまま寄る)は許可。ただし最終出力は入力と同じピクセル寸法へスケールバック。 </Purpose> <FinalOutputSpec> <Geometry> <AspectRatio sameAsInput="true"/> <PixelDimensions policy="finalExportMatchesInput"/> <Reframe rotate="forbid" crop="centerOnly" perspective="forbid" scale="forbidDuringEdit"/> <RelativePlacement keys="窓枠, ランプ, 主体"/> </Geometry> <Look focalFeel="35–50mm natural" contrast="moderate" vignette="veryLight"/> <DepthOfField policy="respectExisting" addedBlur="minimal" preserveEdges="straightLines"/> <NoiseGrain LNR="light–medium" CNR="light–medium" grain="small/low"/> <Color neutrals="neutral" warmth="slightWarmAllowed" skinFood="noArtifacts"/> <Resample policy="onUpscale" method="Lanczos" optionalEdgeSharpen="mild, edge-only"/> <Deliverables> <File type="JPEG" profile="sRGB" quality=">=90" embedICC="true"/> <File type="PNGorTIFF" bitDepth="8/16" embedICC="true"/> <Report type="TXT" content="AutoVars, Params, Metrics, Gates, Retries"/> </Deliverables> </FinalOutputSpec> <PreflightInspection required="true"> <View zoom="100%/200%" guides="ruleOfThirds, center, verticals"/> <Checks> <Check id="I1">主要直線(窓枠/テーブル端/柱)の歪み・傾き</Check> <Check id="I2">被写体エッジ(グラス/ストロー/葉/氷)のハロ・二重線</Check> <Check id="I3">白飛び/黒つぶれの有無と割合</Check> <Check id="I4">圧縮劣化(ブロック/モアレ/ポスタリゼーション)</Check> <Check id="I5">強ハイライト(グロウ追加時の破綻リスク)</Check> <Check id="I6">顔/ロゴ/商標/肌/食材の有無(色破綻厳禁)</Check> </Checks> <OperatorTips> <Tip>幾何は最初に固定。露出/WBは微調整から。</Tip> <Tip>“寄り”は 0→10→15→20→25% の順で最小限。</Tip> <Tip>白フチ/二重線が見えたらマイクロコントラストを即下げる。</Tip> <Tip>グロウは面積小・強度薄(1–3%)。</Tip> </OperatorTips> </PreflightInspection> <AutoVars lockGeometry="true"> <EXIF read="Make,Model,FocalLength,ExposureBias,WB,ISO" fallback="none"/> <Compute using="visionOrHeuristics"> <Var name="width" type="int"/> <Var name="height" type="int"/> <Var name="aspect_ratio" type="float"/> <Var name="clip_white_pct" type="float" fallback="0.0"/> <Var name="clip_black_pct" type="float" fallback="0.0"/> <Var name="wb_cast" type="enum" values="neutral,warm,cool,green,magenta" fallback="neutral"/> <Var name="noise_level" type="float" fallback="0.2"/> <Var name="saliency_roi" type="bbox" fallback="center"/> </Compute> <Bindings> <Bind from="wb_cast" to="WB.tuningHint"/> <Bind from="noise_level" to="NR.initialPreset"/> <Bind from="saliency_roi" to="YORI.candidateDecision"/> </Bindings> </AutoVars> <Variables> <YORI options="0|10|15|20|25" default="10" rule="centerCropOnly; keepAspect; upscaleToOriginalAtEnd"/> <WB kelvin="±200K" tint="±5" defaultFrom="AutoVars.wb_cast"/> <Tone exposureEV="0〜-0.4" highlightRecovery="on" blackClip="forbid"/> <MicroContrast level="low–mid" guard="noHalo"/> <Vignette ev="[-0.2,-0.4]" distribution="natural"/> <Glow amount="1–3%" scope="highlightsOnly"/> <NR luminance="light–medium" chroma="light–medium" adaptTo="AutoVars.noise_level"/> <FilmGrain size="small" amount="2–8%" scaleWith="finalOutputSize"/> </Variables> <ImmutableScript> <![CDATA[ ORDER = [ "GEOMETRY_LOCK","OPTIONAL_CENTER_CROP","BASE_TONE","WB", "HIGHLIGHT_RECOVERY","MIDTONE_CURVE","LOCAL_HSL", "MICRO_CONTRAST","NOISE_SHAPING","OPT_VIGNETTE", "OPT_GLOW","OPT_DOF","UPSCALE_TO_ORIGINAL_SIZE", "SRGB_EMBED","EXPORT","REPORT" ] DENOISE_MAX = 0.35 YORI_SET = {0,10,15,20,25} FORBID = { "AUTO_REFAME","AUTO_ROTATE","PERSPECTIVE_WARP", "SCALE_CHANGE_DURING_EDIT","BACKGROUND_REPAINT", "SUBJECT_MOVE","EXIF_FAKE","OVER_SHARP","HDR_OVERCOOK", "SAT_OVERSHOOT","POSTERIZATION" } RETRY_POLICY = { "max": 2, "stepDown": ["effectStrength","YORI"] } RESAMPLE_ON_UPSCALE = "Lanczos" EDGE_ONLY_MILD_SHARPEN = true ]]> </ImmutableScript> <GenerativeLimits> <Strength denoiseMax="0.35"/> <StructureGuidance types="Canny|Depth|Lineart" weight="0.7–1.0"/> <ResizeMode prefer="Fit" forbid="Fill"/> </GenerativeLimits> <!-- Vision & Python:意味がある場合のみ実行。なければ自動スキップ。 --> <VisionPythonExtension enabled="auto"> <AnalysisPolicy> <Downscale longSide="1024px" purpose="analysisOnly" preserveAspect="true"/> <Thresholding edge="adaptiveQuantile(0.85)"/> <GeometryMetrics> <Metric name="edgeIoU" pass=">=0.92"/> <Metric name="tiltDeltaH_deg" pass="<=0.20"/> <Metric name="tiltDeltaV_deg" pass="<=0.20"/> <Metric name="mae_gray" pass="<=0.10" note="情報として。合否は幾何系で判定"/> </GeometryMetrics> </AnalysisPolicy> <Hooks> <Hook id="preflight_autovars" when="beforeEdits" requires="vision|python" optional="true"> <Output> <File path="/analysis/pre_edges.png"/> <File path="/analysis/pre_hist.json"/> <File path="/analysis/autovars.json"/> </Output> </Hook> <Hook id="postedit_compare" when="afterEdits" requires="python" optional="true"> <Output> <File path="/analysis/post_edges.png"/> <File path="/analysis/diff_abs.png"/> <File path="/analysis/metrics.json"/> </Output> </Hook> </Hooks> <PythonSnippets lang="python3"> <![CDATA[ import os, json from pathlib import Path import numpy as np from PIL import Image, ImageFilter def load_gray_resize(path, long_side=1024): im = Image. open(path).convert("L") w, h = im.size if max(w,h) > long_side: if w >= h: im = im.resize((long_side, int(h*long_side/w)), Image.BICUBIC) else: im = im.resize((int(w*long_side/h), long_side), Image.BICUBIC) arr = np.asarray(im, dtype=np.float32)/255.0 return im, arr def sobel_mag(gray_img): # PIL の Kernel でベクトル化(高速・依存少) gx = gray_img.filter(ImageFilter.Kernel((3,3), [-1,0,1,-2,0,2,-1,0,1], scale=1)) gy = gray_img.filter(ImageFilter.Kernel((3,3), [-1,-2,-1,0,0,0,1,2,1], scale=1)) gx = np.asarray(gx, dtype=np.float32) gy = np.asarray(gy, dtype=np.float32) mag = np.hypot(gx, gy) ang = (np.degrees(np.arctan2(gy, gx)) 180.0) % 180.0 # 0..180 mag = mag / (mag.max() 1e-6) return mag, ang def dominant_tilts(ang, mag, q=0.85): mask = mag > np.quantile(mag, q) if mask.sum()==0: return 0.0, 0.0 line_ang = (ang[mask] 90.0) % 180.0 # 0..180 (線分角) # 垂直:90°、水平:0°近傍への乖離を平均 v_tilt = float(np.mean(np.abs(line_ang-90.0))) h_tilt = float(np.mean(np.minimum(np.abs(line_ang-0.0), np.abs(line_ang-180.0)))) return h_tilt, v_tilt def edge_iou(mag_a, mag_b, q=0.85): ta = np.quantile(mag_a, q); tb = np.quantile(mag_b, q) ea = mag_a >= ta; eb = mag_b >= tb inter = np.logical_and(ea, eb).sum() union = np.logical_or(ea, eb).sum() return float(inter/union) if union>0 else 1.0 def mae_gray(a, b): return float(np.mean(np.abs(a-b))) def save_img01(arr, path): Image.fromarray((np.clip(arr*255,0,255)).astype(np.uint8)).save(path) def preflight_autovars(input_path, out_dir="/analysis"): os.makedirs(out_dir, exist_ok=True) g_img, g = load_gray_resize(input_path, 1024) mag, ang = sobel_mag(g_img) h_tilt, v_tilt = dominant_tilts(ang, mag) # ヒスト(灰度) hist, _ = np.histogram((g*255).astype(np.uint8), bins=256, range=(0,255)) json.dump({"hist":hist.tolist()}, open(f"{out_dir}/pre_hist.json","w")) save_img01(mag, f"{out_dir}/pre_edges.png") auto = {"tilt_h_deg":h_tilt, "tilt_v_deg":v_tilt} json.dump(auto, open(f"{out_dir}/autovars.json","w"), indent=2) return auto def postedit_compare(orig_path, final_path, out_dir="/analysis"): os.makedirs(out_dir, exist_ok=True) # 解析は同一長辺に正規化 o_img, o = load_gray_resize(orig_path, 1024) f_img, f = load_gray_resize(final_path, 1024) # サイズ差があればリサイズ f = np.asarray(Image.fromarray((f*255).astype(np.uint8)).resize(o_img.size, Image.BICUBIC), dtype=np.float32)/255.0 # エッジ o_mag, o_ang = sobel_mag(o_img) f_mag, f_ang = sobel_mag(Image.fromarray((f*255).astype(np.uint8))) save_img01(f_mag, f"{out_dir}/post_edges.png") # 指標 iou = edge_iou(o_mag, f_mag, 0.85) h_o, v_o = dominant_tilts(o_ang, o_mag) h_f, v_f = dominant_tilts(f_ang, f_mag) mae = mae_gray(o, f) # 可視化 diff = np.abs(o - f) save_img01(diff, f"{out_dir}/diff_abs.png") metrics = { "edgeIoU": iou, "tiltDeltaH_deg": abs(h_o - h_f), "tiltDeltaV_deg": abs(v_o - v_f), "mae_gray": mae } json.dump(metrics, open(f"{out_dir}/metrics.json","w"), indent=2) return metrics ]]> </PythonSnippets> </VisionPythonExtension> <QualityGates> <!-- 幾何は数値で判定(Vision/Pythonが無い場合は所見を必須記載) --> <Gate id="G1" name="GeometryIntegrity"> <Metric name="edgeIoU" pass=">=0.92" when="metricsAvailable"/> <Metric name="tiltDeltaH_deg" pass="<=0.20" when="metricsAvailable"/> <Metric name="tiltDeltaV_deg" pass="<=0.20" when="metricsAvailable"/> <CheckFallback>主要直線の角度差が視認できない/相対位置の変化が感じられない旨を明記</CheckFallback> <FailAction>効果量を減衰し、YORIを一段下げて再実行(maxRetries=2)</FailAction> </Gate> <Gate id="G2" name="EdgeClarity"> <Check>白フチ/二重線なし(目視 or 所見)。過剰シャープなし。</Check> </Gate> <Gate id="G3" name="ColorFidelity"> <Check>白/グレー中立、肌・食材の不自然変色なし。</Check> </Gate> <Gate id="G4" name="Naturalness"> <Check>HDR感/ポスタリゼーションが視認不可。</Check> </Gate> <Gate id="G5" name="OutputConformance"> <Check>原寸へスケールバック(Lanczos)、ICC埋め込み、2種書き出し完了、レポート記録。</Check> </Gate> </QualityGates> <ResponseFormat strictlyEnforced="true" autoReemitOnViolation="true"> <Schema> <![CDATA[ <Output> <Analysis>I1〜I6の所見+AutoVars要点(wb_cast/noiseなど)</Analysis> <Plan>YORI/トーン/NR等の戦略(箇条書き)</Plan> <Edits> <Tone exposureEV="-0.3" highlights="-18" shadows=" 10" curve="mildS"/> <WB kelvin=" 150" tint="-2"/> <HSL edits="..."/> <MicroContrast amount="0.35" radius="small"/> <NR L="0.25" C="0.20"/> <Vignette ev="-0.25"/> <Glow amount="0.02"/> <YORI percent="10"/> </Edits> <Diagnostics> <Files> <File path="/analysis/pre_edges.png" exists="maybe"/> <File path="/analysis/post_edges.png" exists="maybe"/> <File path="/analysis/diff_abs.png" exists="maybe"/> <File path="/analysis/metrics.json" exists="maybe"/> </Files> <Metrics edgeIoU="n/a|0.00-1.00" tiltDeltaH_deg="n/a|float" tiltDeltaV_deg="n/a|float" mae_gray="n/a|float"/> </Diagnostics> <QualityReport> <Geometry status="PASS|FAIL" notes="数値 or 所見"/> <Edges status="PASS|FAIL" notes=""/> <Color status="PASS|FAIL" notes=""/> <Naturalness status="PASS|FAIL" notes=""/> <OutputConformance status="PASS|FAIL" notes="resample=Lanczos, sharpen=edge-only-mild|off"/> </QualityReport> <Files> <WebJPEG path="/web_final.jpg"/> <Master path="/master.tif_or_png"/> <Report path="/edit_report.txt"/> </Files> <Confidence overall="0.80"/> </Output> ]]> </Schema> </ResponseFormat> <CapabilityAndFallback> <If vision="unavailable"> <Action>Vision/Python フックをスキップし、Diagnostics.Metrics は "n/a" を明示。</Action> <Action>G1 は所見テキスト必須。幾何変化を感じない旨を具体表現で記述。</Action> </If> <If python="unavailable"> <Action>Hooksをスキップ。品質ゲートは所見ベースで判定。</Action> </If> <If generativeTools="unavailable"> <Action>OPT_DOF/強化グロウは無効化。</Action> </If> </CapabilityAndFallback> </SystemPrompt>
1
3
1,573
Our X channel is shutting down – but we’re still here for you! 🔹 Subscribe to our newsletter: adapt.to/2025/newsletter 🔹 Follow us on LinkedIn: adapt.to/linkedin 📅 Save the date: adaptTo() 2025 → Sept 29 - Oct 1 🚀 Thanks for your support – see you on other channels!
69
27 Jan 2025
I agree with some of the sentiments here, but...the only way to sort this out is to get everyone back to the office they were hired to work in each day. Sure sorts out the dead wood or people who a will not adaptto change. Just go in and see what shakes out or find another job.
2
4
56
13 Nov 2024
My @adaptto talk on the new Document Authoring solution with @AdobeExpCloud Edge Delivery Services just went live! Thanks to all the @Adobe folks I've been working with to make this a thing - DA is the way of the future. adapt.to/2024/schedule/light…
3
119
🎉 adaptTo() 2024 talk recordings, aftermovie & image gallery are now live! Relive the top moments and gain insights from this year's sessions. 👉 Watch & View here: adapt.to/2024/schedule See you at adaptTo() 2025! 🚀 #adaptTo2024 #AEM #DigitalInnovation #adaptTo
2
6
170
8 Nov 2024
Replying to @elonmuskewl
Very well said! Indeed Americans are smart. They’re getting to see who truly cares, for them and the country. They’re getting to know who’s who. I tried to watch a few of the democrats’ celebrities giving their speeches and noticed something they had in common: They didn’t understand the real issues on both sides. I thought they would at least reinforce their side and that too wasn’t the case. There wasn’t balance between the candidate competences and the issues but the focus was more on selling the candidate and very little on why her. They quote some famous founding fathers, whose words didn’t reinforce the tangents Harris had—which means nothing in common, too. Not authentic. I hope the ones I saw didn’t represent the rest of the ones I didn’t see. Speaking in general terms here: one can’t live or lead this way, or be absent to what’s going on, and on an Election Day remember what the founding fathers said without the needed relevance. Whether democrats will ever understand it, you ask? I believe they can. It’ll take a wiilingness to “self -assessment, to change and adaptto putting the country first, among other things. I share a few more things they could do on the link below.❤️ x.com/metanoia_ki/status/185…

7 Nov 2024
I honestly don’t see her returning to run for the presidential office. For Democrats that would take many years of reforming party policies and the return to (Bill) Clinton-ism, at least, if they’ll follow clean means in obtaining the office again. A simple question please: what would convince a defected member/voters, come next election to return to them? Nothing yet! And more may defect. It’ll take a level of admission of wrongs and incompetences of 2020-2024 before the people, especially. Are we looking at an unforgiving perfectionism? No. I believe that people need to know and matters need to be made right. As we know we don’t come into the presidential office to learn HOW to lead even though we may be confronted by different situations which as leaders, will require our right reactions for right results. At this point permit me to say that, I pray and hope the new administration among all the good it plans to do, it’ll hold vigilance against potential unwholesome methods of smearing, setting up to fault, by the other side, because when all fails, some power mongers—unlike patriotic leaders—can or may resort to such. Defectors aren’t bad. They too ought to be included beyond the vote. However, they can be working from within for a side they came from against America and thenRepublican Party. Ahem, just saying—termites can be quite destructive. As for Republicans, ONGOING clear strategy to reform, to equip the American masses for participation post elections, with their level of dedication, transparency, keenness on adherence to the Constitutional spirit of Americanism, among other good things, will continue to secure them the office for quite a while.❤️ @elonmusk
1
1
3
97
7 Nov 2024
Cut a podcast using Adobe Podcast v2 youtube.com/watch?v=Q4oEAVu9… talking about @adaptto, the upcoming @adobedevs conference and the AMAZING bike infrastructure in Berlin. Also - did you know the tallest mountain in Berlin is a man-made post-WWII rubble pile?

4
114
29 Oct 2024
For you map nerds, this is the heatmap of the rides I took in Berlin while at @adaptto. Just that I was able to get space & fresh air just from getting back & forth to the conference makes me wish SO MUCH that @AdobeSummit could be...literally anywhere else besides Vegas.
1
3
106
✨ That’s a wrap on adaptTo() 2024! 🎉 Thank you to all 200 attendees for making it a sold-out success! 🙌 👉 We want to hear your highlights! Share your favorite moments! Subscribe to our newsletter for adaptTo() 2025 updates! 📧 adapt.to/2024/newsletter #adaptTo2024 #AEM #Recap
2
113
23 Oct 2024
Today I got to live my dream, and did a talk at the @adaptto conference about some of the sweet tech we've been working on at @ArboryDigital this past year in conjunction with some extremely smart people at @adobe.
2
2
12
626
We’ve just wrapped up an incredible time at @adaptto 2024 in Berlin, where the AEM community came together to share knowledge and drive innovation 🚀 Stay up to date with what we’ve been up to: netcentric.biz/insights/succ… #AEM #Event #Networking #OurTeam
3
89
🚀 Good morning from the final day of adaptTo() 2024! 🎉 It’s your last chance to network with fellow AEM experts—don’t miss out! 👥 What’s been your best connection so far? 🤔 Let’s finish strong! 🌟 #adaptTo2024 #adaptTo #AEM #Networking #TechCommunity #FinalDay
5
206
It was a great experience to discuss this evening with the ⁦@adaptto⁩ GenAI presenters in the playground about the AEM IA applications. #adapTo2024 #NTTDATA #AdobeExperienceManager #TechnologicalInnovation #Berlin #development
2
78